-정리 #include void print_sum(int *p); main(){ int a[5] = {1,2,3,4,5}; print_sum(a); } void print_sum(int *p){ length = sizeof(p) / sizeof(int); // 배열의 크기가 어떻게 되든 포인터의 메모리 크기는 4 byte } 함수를 사용하는 이유는 재사용할 때 용의하기 위한 목적도 갖고 있다. 배열의 크기에 상관 없이 사용하기 위해선 따로 배열의 크기를 변수로 갖고 있으면 따로 수정할 필요 없이 사용하기 편한데, 배열이 선언된 함수에서 배열의 크기를 매개변수로 받지 않는 이상 다른 함수에선 그 크기를 구할 수가 없다. 포인터로 주소를 겨처 배열의 각 요소 값에 접근할 수는 있지만, 포인터 변수의 크기 자체는 어떤 자료형 변수이던간에 4 byte이므로 배열의 크기는 구할 수 없다. 포인터는 배열이 아니다. 함수 안에서 배열의 이름을 전달 인자로 받은 포인터 매개변수는 배열 명처럼 쓴다.
이 강의가 아니면 프로그래밍언어를 이해할 수 없는 몸이 돼 버렸네요... 6년전 강의인데도 왜이렇게 좋은가요..감사합니다 진짜 매번 막힐때마다 찾아보고 있어요
강의 잘 들었습니다. 고맙습니다.
좋은강의 정말 감사합니다. 잘보구갑니다!
안녕하세요. 감사히 잘 봤어요.
2023년 8월 17일 목 18시30분 태평양 시간
개꿀강의 감사합니다.
감사합니다
감사합니다 ㅠ
-정리
#include
void print_sum(int *p);
main(){
int a[5] = {1,2,3,4,5};
print_sum(a);
}
void print_sum(int *p){
length = sizeof(p) / sizeof(int); // 배열의 크기가 어떻게 되든 포인터의 메모리 크기는 4 byte
}
함수를 사용하는 이유는 재사용할 때 용의하기 위한 목적도 갖고 있다. 배열의 크기에 상관 없이 사용하기 위해선 따로 배열의 크기를 변수로 갖고 있으면 따로 수정할 필요 없이 사용하기 편한데, 배열이 선언된 함수에서 배열의 크기를 매개변수로 받지 않는 이상 다른 함수에선 그 크기를 구할 수가 없다.
포인터로 주소를 겨처 배열의 각 요소 값에 접근할 수는 있지만, 포인터 변수의 크기 자체는 어떤 자료형 변수이던간에 4 byte이므로 배열의 크기는 구할 수 없다.
포인터는 배열이 아니다.
함수 안에서 배열의 이름을 전달 인자로 받은 포인터 매개변수는 배열 명처럼 쓴다.
3:10
카페에 질문을 올려주시면 저자님이 답변을 해드립니다. 참고하세요~
► 바로가기: cafe.naver.com/thisisc
9분20초에 &붙히는게 맞나요??
카페에 질문을 올려주시면 저자님이 답변을 해드립니다. 참고하세요~
► 바로가기: cafe.naver.com/thisisc
안녕하세요.
7년전에 해결하셨나요?
입력받는 주소를 넣어야 하니 맞지요.
2023년 8월 17일 목 18시32분 태평양 시간