一段代码
- #include<stdio.h>
- int main()
- {
- char name[] = "it";
- char name2[] = {'o','k'};
- printf("%s\n",name2);
- return 0;
- }
复制代码
我在vc上运行,输出的结果是“ok烫it”,这个烫字不知道什么意思,先忽略,如果把char name2[] = {'o','k'};改成char name2[2] = {'o','k'};输出的结果一样,再改成char name2[3] = {'o','k'};则输出“ok”。这是字符串\0内存中存储的作用。
同样地printf("%s\n",name2);改成printf("%s\n",&name2[1]);输出“k烫it”,再改成printf("%s\n",name2[1]);程序自动关闭,什么意思? |