#include <stdio.h>

int main(void)
{
        char* p="abcd";
        
        printf("%s",p);

        return 0;
}

============================================================================


보통 제가 알기로는 밑에 과정인줄 알았거든요...

변수 선언 (ex) char c = 'a'
-> 컴퓨터가 &c라는 주소에 메모리 할당해서 아스키코드의 알파벳 a를 넣어줌.
-> 포인트 변수 선언하고 변수c 주소 &c를 초기값으로 정해줌. (ex) char* p = &c
-> printf("%c",p); 해주면 출력을 해줌.

근데 맨 위의 코딩을 살펴보면... 변수선언이 없어요...
변수선언이 없이 코딩이 잘 돌아가는게 신기하네요...
포인트 변수는 기본적으로 변수의 주소를 가지고 작동하는줄 알았는데...
변수선언없이 갑작스레 문자열을 주소로 저장해서 실행이 되니...
작동원리가 이해가 안되요.