2012-08-30 52 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;' –

相关问题