Я довольно новичок в программировании.И я часто сталкиваюсь с этой декларацией.Скажем, например:
char *x = "geeksquiz";
Означает ли это, что x содержит адрес первого элемента строки, то есть символа 'g'?
Если это такзатем рассмотрим следующий пример:
char *str1 = "geeks";
char *str2 = "forgeeks";
printf("str1 is %s, str2 is %s", str1, str2);
Вывод:
str1 is geeks, str2 is forgeeks
Почему оператор printf печатает str1 - выродки, а str2 - подделки, если они содержат адресасоответственно?или это заполнитель% s, который инструктирует printf печатать строковые литералы?