請問一下各位大佬,在這個代碼段中,為什么p=p+1是將p所對應的地址加1,且m所對應的值不變
#include<stdio.h>
void f(int *p,int *q);
main()
{
int m=1,n=2,*r=&m;
f(r,&n);
printf("%d,%d",m,n);
}
void f(int *p,int *q)
{
p=p+1;
*q=*q+1;
}
uj5u.com熱心網友回復:
因為p = p +1是地址值加1,不是地址值指向的內容加1.與此不同的*q = *q + 1;就是q指向的內容加1.
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/267521.html
標籤:C語言
下一篇:C語言 結構
