Нет, это неопределенное поведение в качестве среды выполнения, хотя все, что нам нужно, может быть введено в несколько двоичных символов ASCII, вы действительно не хотите в это вдаваться. Лучший способ справиться с этим - использовать цикл for и выполнять итерацию по нему или использовать calloc
, который инициализирует указатель, но устанавливает его в 0.
for (i = 0; i < 100; i++) literal[i] = '\0';
OR
char *literalPtr = (char*)calloc(100, sizeof(char)); // Array of 99 elements plus 1 for '\0'
Нет абсолютно никаких гарантий в этом. Следовательно, оно будет классифицировано как неопределенное поведение, поскольку оно зависит от компилятора и реализации времени выполнения.
Надеюсь, это поможет,
С наилучшими пожеланиями,
Том.