Здравствуйте, объясните простым языком пожалуйста, что есть такое - "Null-terminated string" и как можно создать такую строку на C.
Это массив символов. Обычно так:
char CString[] = "Hello";
Переменная CString будет оканчиваться нулём, автоматически. Можно так:
char CString[] = {35, 46, 32, 48, 0};
Привет, да, Эдуард все четко описал, строка на C - это просто массив char элементов. Null-terminated string - просто массив элементов, в котором присутствует символ '\0', сообщающий об окончании "строки" (при этом размер массива может быть и больше).
char myFirstString[10] = "Temp"; // Получаем: // myString[0] = 'T' // myString[1] = 'e' // myString[2] = 'm' // myString[3] = 'p' // myString[4] = '\0' - добавлено автоматически // То же самое: char mySecondString[10] = {'T', 'e', 'm', 'p', '\0'};
В виде hex-значений получим (ascii table):
// myString[0] = 0x54 // myString[1] = 0x65 // myString[2] = 0x6D // myString[3] = 0x70 // myString[4] = 0x00
Спасибо, в итоге все довольно просто и понятно оказалось.