Я немного озадачен этим выражением:
char *s = "abc";
Строковый литерал создается в стеке?
Я знаю, что это выражение
char *s = (char *)malloc(10 * sizeof(char));
выделяет память в куче и это выражение
char s[] = "abc";
выделяет память в стеке, но я совершенно не уверен, что делает первое выражение.