#include <stdio.h>
int main() {
char* astrList[3] = {"Hello", "World", "String"};
char* *ppstrList = astrList;
char** *pppstrList = &ppstrList;
puts(*pppstrList[0]);
puts(pppstrList[2][0]);
return 0;
}
혼자 c를 공부하고 있어요.. 마지막 puts()
에서 Thread 1: EXC_BAD_ACCESS (code=EXC_I386_GPFLT)
에러가 났는데 이유를 모르겠어서요..
책을 보고 하고 있는데 예제에서
puts(* (*(pppstrList + 2) + 0 ) );
라고 나와있는걸 이렇게 바꿔봐도 되나.. 해서 해본거였어요. 왜(?) 이런 에러가 뜨는걸까요?
-> 연산결과는 char*
일꺼구.. 그럼 puts()
로 해도 문자열이 잘 나와야 할껀데...