c语言中printf打印一个没有\0结束符的字符串有问题吗

c语言中printf打印一个没有\0结束符的字符串有问题吗,,,,,,,,,,

That's a good question, maybe 3 results:
1. The program runs not bad(looks good);
2. SIGABRT;
3. SIGSEGV;

它会一直读直到遇到 \0

一般情况 你没写也会自动加

内存就炸了,编译没有错,但是运行不了

一般的话系统默认的会在字符串的后面加结束符,但是如果强制的或者认为的造成没有结束符,他会一直顺着内存地址往下读,知道遇到\0

如果用char *s="abcde";这样的,会自动加\0的,但是如果用数组,你的字符串后面必须留一位放\0的

系统自动给你加上有些网上测评也会自动加上

如果是数组形式的字符串,若没有'/0'会出错。若是指针形式的字符串,会自动读取到'/0'结束