第五章 :指针与数组

1.合法的指针运算包括:
a.相同类型指针之间的赋值;
b.指针之间或指针与整型之间的加法或减法运算;
c.加或比较两个指向相同数组元素的指针;
d.指针与0之间的赋值或比较运算。
e.注意void *通用类型指针,可以不通过转换相互赋值。
2.注意的是:
一个指针=它的值(它所指向的变量的地址)+它本身在内存中的地址构成;
调用函数时,当要修改一个指针的值(此指针指向的变量的地址)时,一定要调用这个指针的地址。
否则修改无效。
函数调用传值,不会修改:

#include <stdio.h>
#include <stdlib.h>
void swap(int *c, int *d){
    int *temp;
    temp = c;
    c = d;
    d = temp;
    printf("已调用函数,在函数%s()中:Add of C=%X,Add of D=%X\n",__func__, &c, &d);
    printf("已调用函数,在函数%s()中:Val of C=%X,Add of D=%X\n", __func__,*c, *d);
}
int main()
{
    int *p = (int *)malloc(sizeof(int));
    *p = 100;//只是让地址中存储的东西不一样 
    int *c = p;//此时指针中的值为0,也就是没有指向任何对象;
    int *q = (int *)malloc(sizeof(int));
    *q = 200;//只是让地址中存储的东西不一样 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值