Я делал базовую программу струн и делал это. Существует строка следующим образом:Размер строки равен числу символов
#include<stdio.h>
int main()
{
char str[7]="network";
printf("%s",str);
return 0;
}
Он печатает network
.В мой взгляд, он не должен печатать сеть. Некоторое значение мусора должно быть напечатано, потому что '\0'
не заканчивает этот массив символов. Так как это напечатано? Не было никаких предупреждений и ошибок.
Вам повезло, и '' \ 0'', предоставленный '' network '', не был перезаписан ничем иным, когда вы печатали' str'. – zoska
Я бы не стал так быстро принимать answser. Ни один из ответов не отвечает на ваш вопрос. – idoby
в C++ необходимо, чтобы строковый массив был больше, чем общее количество символов, но в c это не так. – mrigendra