您的位置:首页 > 理论基础 > 数据结构算法

【郝斌数据结构自学笔记】6-7_所有的指针变量只占4个子节,如何通过函数修改实参的值

2015-11-15 17:37 459 查看
6_所有的指针变量只占4个子节
用第一个字节的地址表示整个变量的地址

CASE 1

double *p;

double x=66.6; //一个double占8个字节

p=&x;//x占8个字节,1个字节是8位,1个字节一个地址,p内只存放了一个地址,通常是字节的首地址

double arr[3]={1.1,2.2,3.3};

double *q;

q=&arr[0];

printf(“%p\n”,q); //%p实际就是以十六进制输出

q=&arr[1];

q=printf(“%p\n”,q); //p,q相差8

无论指针指向的变量占多少个字节,指针变量统一都只占4个字节

7_如何通过函数修改实参的值

发送地址

CASE 1 修改指针变量的值,只能修改地址

void f(int **);

int main(void)

{

inti=9;

int*p=&i;// *p;p=&i;

printf(“%p\n”,p);

f(&p);

printf(“%p\n”,p);

return0;

}

//void f(int *q)

//{

// q=(int*)0xffffffff; //错误,不会改变p的值

//}

void f(int ** q)

{

*q=(int*)0xffffffff;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: