- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4、结构与函数 关于结构,至少有3种传递方式:分别传结构中的元素、结构整体传送、传指针,3种方式各有其优缺点。 1)struct point makepoint(int x, int y){ struct point temp; temp.x = x; temp.y = y; return temp;} 2)struct point addpoint(struct point p1, struct point p2){ p1.x += p2.x; p1.y += p2.y; return p1;} 3)当结构体包含的内容较大时,使用指针来传。 1969年, AT T公司贝尔实验室 1983年获图灵奖 Ken ThompsonDennis M. Ritchie ********* 注 ********* 编程环境:TC2.0, Windows XP, PⅤ ★ ★ ★ 若编程环境为CodeBlock或 VC++6.0 请把程序中的 int 改为short int 一、地 址 找人怎么找? 第一次上课找教室、调课(调教室) 考试地点 8F 37 96 25 34 89 087F:0000 087F:0001 087F:0002 087F:0003 087F:0004 087F:0005 087F:0000 7F:9C ┄ ┄ 69: 7F 087F:0010 4D: 82 ┄ ┄ A2: 98 16个字节 内存单元的地址及其所指的内容! 二、 指 针 1、 指针的定义 定义:指针是用以定位其它变量的地址变量 内涵: 1)指针是一个变量 2)值为地址 3)通过它,可以查找到其它变量的值 4) 其所指的变量有类型上的区别, 因此: “所指变量所占内存大小”因类型不同而有所区别。 2、 C中指针的表示方法及示例 基本类型 char 一个字节 short int 一般(至少)16位 long int 一般(至少)32位 int 或16位,或32位,决定于系统 float double int id,*a_id; long int score =1000000; int *c=NULL; printf(\n %d %p %ld %p,id,a_id,score,c); printf(\n %p %p %p %p \n,id,a_id,score,c); id=100; a_id=id; c= score; printf(“整型值及其所在地址分别为%d %p \n,*a_id,a_id); printf(“长整型值及其所在地址分别为%ld %p \n,score,score); printf(“长整型值中前二个字节值与地址为 %d %p \n,*c,c); printf(“后二个字节的值与地址为%d %p \n,*(c+1),c+1); printf(%d \n,score16); int id,*a_id; long int score =1000000; int *c=NULL; 16960 15 0000 id=100; a_id=id; c= score; FFD0 FFD2 FFD8 FFD4 FFD0 FFD2 FFD8 FFD4 FFD0 16960 15 100 FFD4 3、 *、的作用 *: 1)用于定义指针变量; 2)用于取某地址处所存放的元素值 (与类型有关) : 1)取元素所占内存的首地址 2)其它含义 4、 指针运算 1) 赋值 2)++ 例: p++; 3)-- 例: p--; 4)比较 指向同一目标的指针才可以进行比较。 ==; , 等 增加的size与所指的类型相对应 5、 指针与数组 char name[8], *p; p=name; 1)把name数组的首地址(第一个元素所在内存的地址)赋给p。 2)编译系统自动识别类型转换并赋值 int *x[10]; 1)产生一个包含10个整型指针的数组。 6、 多级间指 int x,*p,**q; x=10; p=x; q=p; 地
文档评论(0)