왜 이런 결과가나오는지모르겟어요..
의사양반
2023.04.01
질문 제목 : 이결과가 왜나오는거에요?질문 내용 : #include stdio.h
int main()
{
int arr[5]={1,2,3,4,5};
int *ptr=arr;
int i;
for(i=0;i5;i++){
*(ptr+1)+=2;
}
for(i=0;i5;i++){
printf(%d\n,arr[i]);
}
return 0;
}결과
1
12
3
4
5
저거 *(ptr+1)+=2; 이거말고 *(ptr+i)+=2이게 답인데 1하면 왜 12가되죠? ㅠㅠ
-
강아지
아.. 그렇군요!.. 변하지 않게되네요... 감사합니다
-
민트맛사탕
i가 아니고 1이면
*(ptr+1) 가 arr[1]를 5번 가리키게 되고
거기에 2가 더해지니 12가됩니다.