작성
·
339
0
본 강의 6분 30추 쯤 나오는
end가 strtol 함수 내에서 &end로 이중 포인터가 되는지 이해가 가지않습니다
답변 4
2
안녕하세요?
덕분에 저도 복습을 했네요.
함수가 return을 하나만 할 수 있어서, 포인터를 이용해서 여러개를 리턴하는 효과?를 간접적으로 구현할 수 있는 걸로 알고있어요.
강의 [06:06]를 보시면
str~~함수들의 특징은 '끝을 표현하는 문자 포인터 변수를 하나 더 넣어주고 있어요' 이런 설명이 있는데요.
strtol 안에서 한글자 한글자 변환을 하다가 변환을 할 수 없는 것을 만나면 그 포인터를 여기에 넣어주는 거예요.
--------------------------
함수의 리턴값은 하나 이기 때문에 함수 파라미터로 포인터를 이용해서 마치 반환값이 두 개 인것 처럼 작동하게 되는 거라고 생각해요. 그런데 그 반환할 값이 포인터 이기 때문에 이중포인터를 사용하고 있는거죠.
strtol : https://www.tutorialspoint.com/c_standard_library/c_function_strtol.htm
감사합니다.
1
안녕하세요?
아래 코드를 한 번 실행해보세요. 작동하는 코드입니다.
<코드>
아래 문제를 보시면 sum, diff변수에 각각 저장하는 함수다라고 쓰여있죠?
이 함수의 return type은 void인데 어떻게 저장을 할까요?
바로 포인터를 보내서 변수에 직접 접근할 수 있게 하는 겁니다.
이해에 도움이 되었으면 좋겠네요.
감사합니다.
1
제가 아직 포인터에 대한 기본 개념이 부족해서인지 아직 완전히 이해가 되지않네요
"함수 파라미터로 포인터를 이용해서 마치 반환값이 두 개 인것 처럼 작동하게 된다"는 부분이 이해가 안가는데 이 부분 혹시 더 자세히 설명 해주실 수 있으실까요?
0