资源描述:
《计算机原理第10章new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C语言从入门到精髓第十讲:指针课程安排指针与地址概念变量的指针与指针变量数组与指针字符串与指针返回指针值的函数指针数组和指向指针的指针指针与地址概念内存中数据的直接访问方式内存中数据的间接访问方式两种内存数据访问方式的举例地址和指针的概念变量的指针与指针变量指针变量的定义指针变量的引用10_1.cpp“&”和“*”运算符的结合方向10_2.cpp指针变量作为函数参数#includevoidswap(intx,inty){inttemp;temp=x;x=y;y=temp;printf("x=%d,y=%d",x,y);}main(){inta,b;a=
2、4;b=5;swap(a,b);printf("a=%d,b=%d",a,b);}main(){int*p1,*p2,*p,a,b;scanf("%d,%d",&a,&b);p1=&a;p2=&b;if(a
3、变量字符串与指针用字符数组表示字符串10_9.cpp用字符指针表示字符串10_10.cpp字符串指针作函数参数对使用字符指针变量和字符数组的讨论指向函数的指针用函数指针变量调用函数用函数指针变量调用函数需注意问题用指向函数的指针作函数参数10_17.cppmain(){intmax(int,int);intmin(int,int);intadd(int,int);intprocess(int,int,int(*fun)());inta,b;printf("enteraandb:");scanf("%d,%d",&a,&b);printf("max=");process(a,
4、b,max);printf("min=");process(a,b,min);printf("sum=");process(a,b,add);}max(intx,inty){intz;if(x>y)z=x;elsez=y;return(z);}min(intx,inty){intz;if(x5、result);}返回指针值的函数带回指针值的函数,一般定义形式类型名*函数名(参数列表)举例10_18.cppmain(){floatscore[][4]={{60,70,80,90},{56,89,67,88},{34,78,90,66}};float*search(float(*pointer)[4],intn);float*p;inti,m;printf("enterthenumberofstudent:");scanf("%d",&m);printf("ThescoresofNo.%dare:",m);p=search(score,m);for(i=0;i<4
6、;i++)printf("%5.2ft",*(p+i));}float*search(float(*pointer)[4],intn){float*pt;pt=*(pointer+n);return(pt);}指针数组和指向指针的指针指针数组的概念一维指针数组定义的形式:类型名*数组名[数组长度]指向指针的指针char**p;举例10_20.cppmain(){char*name[]={"Followme","BASIC","GreatWall","FORTRAN","Computerdesign"};char**p;inti;for(i=0;i<5;i++){p=nam
7、e+i;printf("%s",*p);}}指针运算小结指针变量加(减)一个整数指针变量赋值两个指针变量可以相减两个指针变量比较性格决定命运,专注成就人生www.rzchina.net源智天下