- 1、本文档共49页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
指针和数组作函数参数通过指针或数组参数,使调用者获得修改后的数据通过一个参数把大量的数据送到函数内如果只向内传送数据,就把参数定义为const,防止意外修改数据,也让函数的功能更明确voidPrintArray(constint*p,intn)
{
......
}voidPrintArray(constinta[],intn)
{
......
}指针与二维数组关系小结指针与二维数组间关系的关键理解二维数组的行指针与列指针二维数组在内存中按行存储,但可以用两种方式来处理它 a[0][0] a[0][1] 行指针 a[0] a[0][2] a[0][3] a[1][0] a[1] a[1][1] a[1][2]a[1][3] pp++int(*p)[4];p=a;//a[0]int*p;p=*a;//a[0]pp++p++p++a[i][j]*(*(p+i)+j)p不动a[i][j]*(*p+j)p动a[i][j]*(p+i*n+j)p不动a[i][j]*pp动指针数组及其应用指针数组元素均为指针类型数据的数组定义格式为:数据类型*数组名[数组长度];char*ptr[5];int*p[5];问题的提出:存储一个长短不一字符串集合的最佳方式是什么?存储一个字符串集合需要使用二维字符数组字符指针数组,每个数组元素都是一个指向一个字符串的指针指针数组及其应用问题的解决:如何访问指针数组指向的字符串呢?如何访问二维字符数组中的字符串?charcountry[][10]={“China”,”Japan”,”France”,”Australia”,””England};for(i=0;i5;i++){ printf(“%s\n”,country[i]);}访问指针数组指向的字符串与访问二维字符数组中的字符串相同的。Char*country[]]={“China”,”Japan”,”France”,”Australia”,””England};countrycountry基本数据类型int、long、char、short、float、double……数组是一种数据类型是从其他类型派生的类型每个元素都有一个类型指针是一种数据类型是从其他类型派生的类型XX类型的指针任何类型都可以作指针或者数组的基类型如指针作为数组的基类型---指针数组char*ptr[5];指针、数组以及其他的类型混合【例10.5】编写程序,从键盘输入若干字符串,并按字典顺序将它们排序输出。指针数组及其应用charstr[N][MAX_LEN];...for(i=0;in-1;i++) { for(j=i+1;jn;j++) { if(strcmp(str[j],str[i])0) { strcpy(temp,str[i]); strcpy(str[i],str[j]); strcpy(str[j],temp); } }}MAX_LENN交换字符数组中的字符串物理排序字符串排序前字符串排序后指针数组及其应用char*ptr[N];...for(i=0;in-1;i++){for(j=i+1;jn;j++){ if(strcmp(ptr[j],ptr[i])0){temp=ptr[i];ptr[i]=ptr[j];ptr[j]=temp;} }}交换指针数组中的字符串指针索引排序N指针数组及其应用#includestdio.h#includestring.h#defineM20#defineN10voidReadLine(char*str[],intn);voidSortName(char*str[],intn);voidPrint(char*str[],intn);intmain(){
您可能关注的文档
- 《电路分析基础》课件 3 电路的基本分析方法、4 电路的基本定理.pptx
- 《电路分析基础》课件 5 正弦稳态电路的分析、6 耦合电感电路与理想变压器、7 三相电路.pptx
- 《电路分析基础》课件 8 非正弦交流电路、9 暂态电路的时域分析、10 双口网络.pptx
- C语言程序设计——基于计算思维的培养 课件 第1章 C语言基本概念.ppt
- C语言程序设计——基于计算思维的培养 课件 第2章 数据类型与表达式.ppt
- C语言程序设计——基于计算思维的培养 课件 第3章 格式化输入与输出.ppt
- C语言程序设计——基于计算思维的培养 课件 第4章 选择结构.ppt
- C语言程序设计——基于计算思维的培养 课件 第6章 函数.ppt
- C语言程序设计——基于计算思维的培养 课件 第8章 指针.ppt
- C语言程序设计——基于计算思维的培养 课件 第9章 字符串.ppt
文档评论(0)