#include<iostream.h>
void get_sum_diff(int a[], int n, int *p_sum,int *p_diff){
for(int i=0; i<n; i++)
*p_sum+=a[i];
for(int j=0; j<3; j++)
*p_diff=a[j];
}
main(){
int a[3]={3,4,5};
int p_s=0,p_d=0;
get_sum_diff(a,2,&p_s,&p_d);
cout<<p_s<<endl;
cout<<p_d<<endl;
}
get_sum_diff 함수를 보게도면
*p_sum+=a[i];
*p_diff-=a[j];
이부분이 있는데 *를 지우고 계산한다면
둘다 0이라는 숫자가 뜹니다
왜그런거죠?
정말 기가막히고 코가막힙니다
자세하게좀 갈켜주세요
일단 책부터 보고옵니다
주소를 계산해 줘버린건가요?
배낀거... 겠죠 ?? =ㅅ=
구 헤더에 타입없는 main 문이라.. C++에서도 엄청 오래된 방식이죠;; 그냥 긁어온 소스
포인터 배우고 와라.. 포인터 연산은 *i = 5; 이렇게 해줘야한다.. printf(\"%d\\n\",i); 는 주소값 출력해주는거임.. 알긋냐