《C语言程序设计》 课件 7.4 指针与字符串数组_第1页
《C语言程序设计》 课件 7.4 指针与字符串数组_第2页
《C语言程序设计》 课件 7.4 指针与字符串数组_第3页
《C语言程序设计》 课件 7.4 指针与字符串数组_第4页
《C语言程序设计》 课件 7.4 指针与字符串数组_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

指针与字符串数组字符串数组数组中的每个元素都是存放字符的数组。字符串数组的每一行可存放一个字符串。用赋初值的方式给字符串数组赋值⑴直接给字符串数组赋初值⑵用指针数组处理多个字符串8.6指针与字符串数组VC\0FORTRAN\0BASIC\0Foxpro\0charb[4][8]={″VC″,″FORTRAN″,″BASIC″,

″Foxpro″};二维字符数组⑴直接给字符串数组赋初值

由于字符串长短不一,定义时应考虑最长的串和结束标志的位置。防止造成内存单元浪费。若有定义:char*f[4]={″VC″,″FORTRAN″,″BASIC″,

″Foxpro″};此定义还可以写成:char*f[]={″VC″,″FORTRAN″,″BASIC″,

″Foxpro″};则数组f中的每个元素都存放着对应的一个字符串的首地址,各字符串依次存入各相应的首地址开始的连续存储单元中。f[0]f[1]f[2]f[3]VC\0FORTRAN\0BASIC\0Foxpro\0节省内存空间!⑵用指针数组处理多个字符串[例8-13]

用指针数组输出多个字符串。#include

<stdio.h>intmain(

){char *s[4]={"dog","cat","pig","all

animals"};int

i;for(i=0;

i

<4; i++)printf("%s\n",

s[i]);return

0;}指针数组s各元素的值就是每个字符串的首地址。#include

<stdio.h>#include<string.h>voidfsort(char*color[],int

n){int

k,j;char*temp;for(k=1;k<n;k++)for(j=0;j<n-k;j++)if(strcmp(color[j],

color[j+1])>0){ temp=color[j];color[j]=color[j+1];color[j+1]=temp;}}p[0]p[1]p[2]p[3]ye l l o w \0g r e e n \0r e d \0b l u e \0pint

main(){ int

i;char

*p[]={"red","blue","yellow","green"};调用函数 */fsort(p,4); /*for(i=0;i<4;i++)printf("%s\n",p[i]);return0;}[例8-14]将4个字符串从小到大排序后输出。定义:int

*p;

p为指向整型数据的指针变量;int

*p[N];定义指针数组p,它由N个指向整数的指针元素组成;int(*p)[N];定义指向含N个元素的一维数组的指针变量p;

int*p();p为带回一个指针的函数,该指针指向整型数据;

int

(*p)(

);p为指向函数的指针,该函数返回一个整型值;指针在使用前一定要赋值,指针可以指向任何数据类型,指向谁,就存谁的地址必须用地址值为指针变量初始化(&变量名,或数组名

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论