문자열을 포인터 배열에 넣는방법 질문드립니다.
나라우람
2023.04.01
질문 제목 :
문자열을 포인터 배열에 넣는방법 질문드립니다.
질문 내용 :
char* name[5];
int i; for (i = 0; i 5; i++)
scanf_s(%s, *(std+i));5명의 이름을 문자열 형식으로 포인터 배열에 넣으려고 하는데요,
컴파일은 되는데 입력중에 실행파일이 에러가 뜨네요..그리고char* a = john;
printf(%s, a);이런식의 문자열 출력에서
포인터a는 john의 주소값을 가지므로
printf(%s, *a); 이렇게 해야 포인터 a가 가르키는 값이 리턴이 되는거 아닌가요?답변 부탁드립니다 :)
-
힘차
name는 char 가 들어있다고 간주되는 메모리의 주소를 5 개 저장할 수 있는 배열이잖아요?
정작 char 가 저장될 곳은 없는 것이죠.
2 차원 배열을 사용하든지,
name 의 각 요소에 char 가(들이) 저장될 수 있는 메모리의 주소를 주든지 해야합니다.