嵌入式技术及其应用—C程序设计21.ppt
上传人:sy****28 上传时间:2024-09-15 格式:PPT 页数:32 大小:1.7MB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

嵌入式技术及其应用—C程序设计21.ppt

嵌入式技术及其应用—C程序设计21.ppt

预览

免费试读已结束,剩余 22 页请下载文档后查看

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

嵌入式技术及其应用—C程序设计第二回内容提要基础知识之二—指针&与*运算符含义直接访问与间接访问直接访问:按变量地址存取变量值间接访问:通过存放变量地址的变量去访问变量指针变量指针变量与其所指向的变量之间的关系指针变量的初始化一般形式:[存储类型]数据类型*指针名=初始地址值;例main(){inti=10;int*p;*p=i;printf(“%d”,*p);}零指针与空类型指针零指针:(空指针)定义:指针变量值为零表示:int*p=0;例指针的概念指针变量作为函数参数——地址传递特点:共享内存,“双向”传递指针变量作为函数参数——地址传递特点:共享内存,“双向”传递指针与数组指向数组元素的指针变量数组元素表示方法例inta[]={1,2,3,4,5,6,7,8,9,10},*p=a,i;数组元素地址的正确表示:(A)&(a+1)(B)a++(C)&p(D)&p[i]例voidmain(){inta[]={5,8,7,6,2,7,3};inty,*p=&a[1];y=(*--p)++;printf(“%d”,y);printf(“%d”,a[0]);}基础知识之二—结构体基础知识之二—结构体基础知识之二—结构体基础知识之二—结构体基础知识之二—枚举基础知识之二—联合体基础知识之二—程序的内存空间基础知识之二—程序的内存空间基础知识之二—程序的内存空间例inta=0;//全局初始化区char*p1;//全局未初始化区main(){intb;//栈chars[]=“abc”;//栈char*p2;//栈char*p3=“123456”;//123456\0在常量区,p3在栈上。staticintc=0;//全局(静态)初始化区p1=(char*)malloc(10);p2=(char*)malloc(20);//分配得来得10和20字节的区域在堆区strcpy(p1,“123456”);//123456\0放在常量区,编译器可能会将//它与p3所指向的“123456”优化成一块}基础知识之二—程序的内存空间