16:25
printf("%s\n",p) 에서 p는 korea의 제일 처음을 가르키므로
printf("%c\n",p) 경우에는 출력값이 K 맞나요? c 는 하나만 출력하니까요?
printf("%c\n",p) = printf("&c\n,*p)
이 두개의 식이 같은거맞나요 ?
답변 2
0
%s로 출력하려면 해당 주소가 와야하고 %c로 출력하려면 값이 와야합니다. %c로 받는 경우에는 별(*)을 붙이셔야 합니다.
정확한 표현은
printf("%c\n", *p);
입니다.
0
안녕하세요, 인프런 AI 인턴입니다. 안유민님.
C언어에서의 포인터와 printf 함수의 사용에 대한 질문을 주셨군요. 먼저, 각 질문에 대해 설명드리겠습니다.
printf("%c\n", p);printf("%c\n", p);는 오류가 발생합니다.%c는 단일 문자를 출력하기 위해 사용되며,p는 문자열의 시작 주소를 가리키는 포인터로, 주소 값 자체를 문자로 해석하려고 해서 적절하지 않습니다. 만약 첫 글자인 ‘K’를 선택하려면printf("%c\n", *p);로 사용해야 합니다.
printf("%c\n", *p);printf("%c\n", *p);는 포인터p가 가리키는 첫 번째 문자 ‘K’를 출력합니다.%c는 단일 문자 출력을 위해 사용되므로 ‘K’가 올바르게 출력됩니다.
포인터를 통한 접근 비교
printf("%c\n", *p);와printf("%c\n", p);는 다릅니다. 전자는p가 가리키는 주소에서 문자를 가져오는 반면, 후자는 주소 자체를 문자로 간주하기 때문에 예상치 못한 결과를 가져올 수 있습니다.
기존의 유사한 질문들을 참고하여 도움을 드릴 수 있는 몇 가지 링크를 제공하겠습니다:
- 정보처리기사 실기 23년 1회 C언어 문제 풀이 강좌 3분 23초: 이 링크에서는 포인터와
printf의 사용 차이를 좀 더 자세히 설명하고 있습니다.
- 함수와 재귀함수_포인터를 입력값으로 받는 함수 22:40: 포인터 변수를 출력할 때의 주의점과
%c,%s사용의 차이점을 유사한 맥락에서 설명합니다.
이 외에도 포인터와 포맷 문자열에 대해 더 탐구하시면, 각 데이터를 처리하는 방식이 더 명확해질 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
정처기 필기 준비할때 이 이론을 다시 외워도 될까요?
0
17
1
조건 반복문 질문: for 문 ?
0
52
1
정처기 26-2회. 9번 질문드립니다!
0
72
1
이론 보면서 질문이 있습니다.
0
68
2
정보처리기사 실기 26년 2회 SRT 스케줄링 문제 단위 질문
0
79
2
유튜브(정보처리기사 실기 | 26년 2회 기출문제 코드 해설)
0
123
2
262 정처기 실기 C언어코딩
0
39
1
정보처리기사 262 실기 Hash(해시) 질문
0
72
2
static 변수 질문입니다.
0
58
2
파이썬 4강 질문입니다.
0
66
2
모의고사 1회 3번문제
0
83
3
41강 30:10
0
63
2
이론 공부법 질문 있습니다.
0
84
2
부모의 생성자 관련 질문
0
61
2
시험지 문제에 필기해도 되나요?
0
82
3
41강 11:23
0
52
2
4강파이썬 질문입니다
0
50
2
try-catch 핸들러명
0
63
2
36강 3:48
0
62
2
35강 18:27
0
63
2
자식 코드 내 super() 생략
0
58
2
출력질문
0
72
2
31강 4:06
0
63
2
파이썬 학습자료가 강의 자료와 다릅니다.
0
92
3





