inflearn logo
강의

Khóa học

Chia sẻ kiến thức

(2026 Mới nhất!) Đỗ thực hành Kỹ sư xử lý thông tin chỉ trong một tuần

Hàm và hàm đệ quy (v2)

21분 *str에 마이스트링이 들어가는 원리

Đã giải quyết

99

korea07074143

7 câu hỏi đã được viết

0

함수와 재귀합수v2 21분즈음에 *str에 mystring이 들어가는 원리가 이해가 안가요

python java c 정보처리기사

Câu trả lời 3

0

weekendcode

C언어에서는 문자열이라는 것이 사실 없습니다. 문자 하나하나가 메모리에 연속되어서 나열되어 있는 것입니다. 그래서 배열로도 선언할 수 있고, 문자열의 시작점을 포인터로 가리켜서 '\0'이 나올 때까지 출력할 수도 있는 것입니다.(%s)

 

지금 printString에서는 입력값의 파라미터를 str라는 문자열 포인터를 통해서 가리키겠다는 뜻입니다.

저 함수 안에서는 str이라는 단어는 이제 문자열을 가리키는 포인터가 됩니다.

그곳에 myString을 가리키라고 한 것입니다.

0

korea07074143

38분 재귀함수에서 prinft에서는 a와 sum 값만 필요한데 왜 res를 실행하는지 궁금합니다 a는 5고 sum은 nsum으로만 되어 있어서 res를 실행하는건가요?

0

weekendcode

하나 작은 값이 들어간 함수에서 리턴값을 받아와야하니까 그렇습니다.

예를 들어서 3으로 nSum을 넣으면

 

2 + nSum(2)을 구해야합니다. <-- 여기서 nSum(2)는 2가 들어간 것의 내용을 "리턴"합니다.

 

결국 하나 작은 값의 함수 리턴값을 받아야하는데, 그게 그 함수에서는 res입니다.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. 이충규님.

C 언어에서 *strmyString 이 들어가는 원리는 포인터와 관련이 있습니다. 이 부분에서는 문자열을 처리하기 위한 포인터의 사용 방법을 이해하는 것이 중요합니다.

myString 은 문자열이고, 문자열은 기본적으로 배열이며, 배열의 이름은 해당 배열의 첫 번째 요소의 주소를 가리키는 포인터와 같은 역할을 합니다. 따라서 char *str = myString; 선언은 str 포인터 변수가 myString 배열 첫 번째 위치의 주소를 가리키게 만듭니다.

%s 형식 지정자는 이 포인터가 가리키는 주소부터 시작해 널('\0') 문자를 만날 때까지의 문자열을 모두 출력합니다. 따라서 printf("입력된 문자열: %s\n", str); 와 같이 사용할 때, strmyString 의 내용을 출력합니다. 별표(*)를 사용하는 이유는 포인터의 값을 참조하기 위함인데, "%s" 형식 지정자를 사용할 때는 문자열로 취급된다는 점을 기억하는 것이 중요합니다.

이와 유사한 질문과 더 많은 정보를 확인하기 위해 아래의 링크를 참고해 보세요:

이 링크들에서는 포인터가 문자열을 어떻게 취급하는지, 그리고 배열과 문자열의 관계에 대해 보다 자세히 설명하고 있어, 이해를 돕는 데 유용할 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

영상 다운로드는 안되나요?

0

39

1

26년2회 실기기출은 언제쯤...

0

79

2

이론 공부법 요약본 버전 업데이트 문의

0

60

2

정처기 필기 준비할때 이 이론을 다시 외워도 될까요?

0

76

2

조건 반복문 질문: for 문 ?

0

66

1

정처기 26-2회. 9번 질문드립니다!

0

89

1

이론 보면서 질문이 있습니다.

0

84

2

정보처리기사 실기 26년 2회 SRT 스케줄링 문제 단위 질문

0

100

2

유튜브(정보처리기사 실기 | 26년 2회 기출문제 코드 해설)

0

160

2

262 정처기 실기 C언어코딩

0

57

1

정보처리기사 262 실기 Hash(해시) 질문

0

89

2

static 변수 질문입니다.

0

67

2

파이썬 4강 질문입니다.

0

75

2

모의고사 1회 3번문제

0

100

3

41강 30:10

0

72

2

이론 공부법 질문 있습니다.

0

101

2

부모의 생성자 관련 질문

0

72

2

시험지 문제에 필기해도 되나요?

0

96

3

41강 11:23

0

64

2

4강파이썬 질문입니다

0

61

2

try-catch 핸들러명

0

73

2

36강 3:48

0

74

2

35강 18:27

0

71

2

자식 코드 내 super() 생략

0

65

2