char *str[16] = {"a", "b", "c", "d"};
char **ptr = str;
ptr[4] = "e";
for (int i = 0; i < strlen(str) + 5; i++){
printf("string %d is %s\n", i, ptr[i]);
}
str 자체는 포인터 없이도 그 문자열의 시작을 가리킨다.
*str 은 문자열의 개별적인 칸들 즉 0번째, 1번째, 2번째,, 칸을 가리킨다.
그래서 일련의 문자열을 선언하려면 이걸 써야한다.
**str 은 문자열의 특정한 칸을 가리킨다.
그래서 특정 문자열을 선언하려면 이걸 써야한다.
'개발 > C' 카테고리의 다른 글
[C] 웹소켓프로그래밍 함수 정리 (socket.io) (0) | 2023.01.05 |
---|---|
[C 소켓통신 #3] HTTP에 메시지를 보내고 받기 (0) | 2022.12.30 |
[C] 구조체 포인터 (0) | 2022.12.29 |
[C] buffer memory flush 하는법 (fgets) (0) | 2022.12.26 |
[C] 형식 지정자 (ex. %d, %s, %o...) (0) | 2022.12.26 |