加密网站,简易博客网站模板下载,四川网站建设和优化,响应式网站开发视频一 指针的引入 什么是指针:指针是一个变量#xff0c;其值是另一个变量的内存地址 简单的使用地址输出一个变量: 代码示例 #include stdio.h
int main()
{int a10;printf(a的地址是:%p\n,a);printf(a%d\n,*(a)); //*号是取值运算符…一 指针的引入 什么是指针:指针是一个变量其值是另一个变量的内存地址 简单的使用地址输出一个变量: 代码示例 #include stdio.h
int main()
{int a10;printf(a的地址是:%p\n,a);printf(a%d\n,*(a)); //*号是取值运算符return 0;
}成果展示: 报错与总结:无
二 指针变量的引入
整型变量→存放整型数的变量字符变量→存放字符型数据的变量
由此,指针变量就是存放指针的变量,存放地址的变量
指针变量的声明:
int *ptr; //声明一个指向int类型的变量ptr
double *dp; //声明一个指向double类型的变量dp需要强调的是:*在声明指针变量时作用是:表示声明指针变量;而在其它地方用于解引指针
示例:通过指针变量访问并输出一个变量
代码示例:
#include stdio.h
int main()
{int a10;int *p;pa;printf(a的地址是:%p\n,a);printf(通过变量名访问a:%d\n,a);printf(通过地址访问a:%d\n,*(a));printf(通过指针变量访问a:%d\n,*p);return 0;
}成果展示: 报错与总结:无
三 指针变量为什么要求类型
原因:
内存访问:不同类型数据占内存空间不同,指针类型决定解引用时读取字节数,避免错误读写指针运算:指针运算偏移量与指向类型相关,类型不符则无法正确计算偏移
实验:对比正确与错误的指针类型的地址访问、数据访问、指针偏移
正确的
代码示例:
#include stdio.h
int main()
{int a0x1234;int *pa;puts(我们在这里测试指针的地址:);printf(p:%p\n,p);puts(\n我们在这里测试通过指针访问变量:);printf(来自p的测试:%x\n,*p);puts(\n我们在这里测试指针偏移:);printf(p:%p\n,p);return 0;
}成果展示: 报错与总结:
错误的
代码示例:
#include stdio.h
int main()
{int a0x1234;int *pa;char *ca;puts(我们在这里测试指针的地址:);printf(c:%p\n,c);puts(\n我们在这里测试通过指针访问变量:);printf(来自c的测试:%x\n,*c);puts(\n我们在这里测试指针偏移:);priintf(c:%p\n,c);return 0;
}成果展示:我们发现,指针类型不兼容从而导致报错 报错与总结: 无