char *a하고 char a[10] 에 대해서 질문드려요.

질문 제목 : char *하고 char n[10] 에 대해서 질문드려요.char *하고 char n[10] 에 대해서 질문드려요.질문 내용 :

void main()
{
char *a=abcd;
scanf(%s,a);
}

이건 안되고

void main()
{
char a[10]=abcd;
scanf(%s,a);
}

이건 되는데요 왜 안되는지 자세히좀 알려주세요~

댓글 1

  • 큰가람 2026.09.22

    위에 char* a는 포인터 변수이구요... 밑에 char a[10]은 배열입니다.
    그래서 그렇습니다.
    scanf() 함수는 입력받은 키값을 지정한 변수 주소에 넣어주는 역할을 하는데
    char* a=\abcd\; 는 문자열 상수 포인터를 설정한거라서 안되는 겁니다.

C언어 다른 글

목록