2012-08-30 79 views
0

我正在接收一系列字符,將其作爲rs232中的10個字符。在一個變量中接收到的是字符或一組字符的形式。我想讓它們成爲字符串將字符串轉換爲字符串c

+2

你試過什麼呢? –

+0

[convert arrayof characters to string]可能的重複(http://stackoverflow.com/questions/12178038/convert-arrayof-characters-to-string) – Blastfurnace

回答

3

記住C沒有字符串,但是可以有一個數組char s。

創建一個適當大小的字符(\0一個額外的字符)。

char str[11]; 

循環遍歷字符,將每個字符設置爲此char字符數組中的適當值。

for (int i = 0; i < 10; i++) { 
    str[i] = your_chars[i]; 
} 

最後拋出空終止符。

str[10] = '\0'; 

CodePad

Fasked還指出,這可以通過strncpy()來實現。

+0

看起來像UB對我:) –

+0

@KingsIndian還沒有做C有一段時間,你能指出UB嗎?謝謝。 – alex

+0

最後一行應該是'str [10] = 0;' –

相關問題