本帖最后由 736010695 于 2014-11-18 10:07 编辑
#include <stdio.h>
int main() { char name1[] = "abc"; char name2[] = {'o', 'k'}; //输出字符串的格式符是%s,当用%s输出值时,会一直输出内存中所访问到的字符,直到遇到\0结束
printf("%s\n", name2); /*输出结果是okabc,原因分析:内存寻址是由大到小,优先分配内存给name1,然后是name2,我们现在输出的name2由于里面没有\0,所有从name2的第一个元素开始走 一直输出,直到碰到字符串name1里面的\0,停止输出,所以结果是:okabc*/
return 0; }
|