C指针(一)

来源:互联网 发布:网络信息诽谤案例 编辑:程序博客网 时间:2024/06/17 06:34

基本使用

int a = 10;int *p ;p = &a;

指针(类型)的兼容性

声明指向A类型的指针,不能指向非A类型的其他变量。因为不同数据类型长度不同,每次指针取值根据长度读取,char类型1字节,int类型4字节

常量指针

int const *p
*p不可以修改,但是p可以修改。因为 const后面直接跟的是*p

指针常量

int *const p
*p可以修改,p不可以修改。因为const后面直接跟的是p

指针作函数参数

更常见的写法是第二个,因为实参传递的时候传递数组名,C语言中数组名通常被当作指针处理

void set_array(int array[]){    for (int i = 0; i < 5; ++i) {        array[i] = i;    }}
void set_array(int *array){    for (int i = 0; i < 5; ++i) {        array[i] = i;    }}