方大侠 发表于 2019-4-2 00:22:26

printf函数求助

printf("Hello world\n")这里面的字符串"Hello world\n"后面会自动添加 空字符\0吗??
那么是不是所有的字符串" ······", c编译器都会加空字符\0??

HUMMER军 发表于 2019-4-2 00:22:27

字符串的定义:在c/c++里,用一个char型数组表示一串字符,称为“字符数组”。把这一串字符叫做“字符串”
字符有两种初始化方法:1、像普通数组一样初始化 char str={'h','e','l','l','o','\0'};
                                 2、特殊的初始化方法       char str=“hello”;
这两种方法本质一样,最终结果也一样,只不过第二种方法比较简洁!但是这两种表示方法都占据了6个字节的内存。
如果用第一种方法,即字符数组来存储字符串时,必须以‘\0’结尾,‘\0’称为字符串的结束符。

看一个例子: char str="hi"; 该数组的长度为8,字符串长度为2
                  char str[ ]="hi";该数组的长度为3,字符串长度为2

想必这么说应该能解释清楚来吧。。。。。
如果解释清楚,请采纳。。。
页: [1]
查看完整版本: printf函数求助