(一)实验目的
1.通过实验进一步掌握指针的概念,会定义和使用指针变量; 2.能正确使用数组的指针和指向数组的指针变量; 3.能正确使用字符串的指针和指向字符串的指针变量; 4.能正确使用指向函数的指针变量;。
(二)实验内容
1.读程序
要求:读懂程序,写出分析结果;上机运行程序,得到运行结果,比较之,如有错误请修改。
(1) #include \"stdio.h\" main() {
int *p,a; a=2; p=&a;
printf(\"main1:a=%d\\n\ f(p);
printf(\"main2:*p=%d,a=%d\ }
f(int *x)
{ *x=10; }
(2) #include “stdio.h” main( ) {
static int a[]={1,2,3,4,5}; int *p=a;
printf(“%d”,*++p); printf(“%d”,*p++); printf(“%d”,(*p)++); printf(“%d\\n”,++*p); }
(3) 输入并调试运行以下程序,分析运行结果,理解二维数组中的行列指针的异同。
#include \"stdio.h\" main( )
{ static int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
int i,j,*p,(*q)[4] ; /* p为列指针变量,q为行指针变量 */ printf(\"\\n\");