一级指针工程开发易发错误模型

来源:互联网 发布:大学毕业证制作软件 编辑:程序博客网 时间:2024/05/23 01:58
1、void getdata01(char *p1)  char *p1 是行参,行参也是被跳用该函数的参数,只不过具有对外属性而已
2、void getdata01(char **p2) char **p2是行参,p2 是变量
3、void getdata01(char ********p3) char **p3是行参,p3 是变量
4、char *p1=null; char=*p2=null; int a=10; int *p3=null; int c=0;
a=20;//直接通过变量修改a的值
p3=&a;//*p放在等号的左边是赋值
c=*p3//*p放在等号的右边是从内存空间取值
5、*p的意义,*好就像一把钥匙通过钥匙去修改门后面的值
6、对参数的指针怎么理解
1)理解的角度需要从2个角度出发
1、占在c/c++编译器的角度去思考   对行参,如果是指针类型,c编译器只会分配四个自己的内存
2)指针的数据类型到底是什么
1、指针的数据类型是指它所针的内存空间的数据类型
2、指针的数据类型具有对依赖性
7、指针的数据类型来解决什么问题
1)指针的步长问题,根据所指的内存空间来定。

工程开发中指针初步
错误1、void main()
{
char *p=null;//指针,指向了null(0x00)
*p=100; // 修改p(0x00)的值;报错因为0x00是系统已经定义好的了所以不可以修改
system("pause");
}
错误2、void main()
{
char *p=0x77;//指针,指向了null(0x77)
*p=100;//错误的地方;因为0x77b不可以修改
}
错误3、void main()
{
char *p="abcdefg";//abcdefg 是常量区,常量区是不可以修改的
*p='z';//错误的地方,因为修改的常量区;
}






0 0