C语言笔记

发布 2021-05-12 01:17:28 阅读 8142

有以下程序段:

main(),p;

p=a; p++;

printf(“%d”, p);

p p++后p所指的位置,所以运行后结果为4.

有以下程序段:

main(),p=a+5;

for(j=3;j;jj=3, 输出*(-p)为9, *p=str[1];

printf(“%d,”,strlen(p));

printf(“%s”,p);

这是p的开始指向,所以程序运行结果为10, one*dream!

数组指针:(一个为指向几列数组的指针变量)指向二维数组的指针变量,期一般形式为类型说明符 (*指针变量名)[长度] 长度即为指针变量所指向的二维数组的列数。例如:

int (*p)[4], a[3][4]; p先与*结合说明p为指针变量,[4]代表p所指向二维数组的列数,p称为数组指针。 语句p=a; 使数组指针p与二维数组a建立关系。

指针数组:(每个数组元素为指针变量的数组)一组有序的指针变量的集合,期一般形式为类型说明符 *数组名[长度]例如: int *p[3] [与*同等优先级,结合性从右自左,所以p位数组名。

由p[0],p[1],p[2]等元素组成,由于加了*所以这些元素为指针变量,p称为指针数组。

指针数组与二维数组建立关系只能通过以下语句 for(i=0;i<3;i++)p[i]=a[i]; 此语句使p[0],p[1],p[2]指向各行的第一个元素,即p[0]=a[0]==a[0][0], p[1]=a[1]==a[1][0], p[2]=a[2]==a[2][0]不能用p=a;来建立关系,因为p为数组名为地址常量。

main()

int a=k[3], i=0;

while(i<3)

fun(a);

函数指针: 一个函数总是占用一段连续的存储空间,函数名代表该函数所占内存区的首地址,我们可以把函数名赋予一个指针变量,使指针变量指向该函数,通过指针变量可以找到该函数,这样的指针变量称为函数指针。其定义形式为:

类型说明符 (*指针变量名)(形参表)

如以下程序段:

int max(int a, int b)

if(a>b)return a;

else return b;

main()

int (*p)(int, int); 定义函数指针变量pmax

int x, y, z;

p=max函数指针变量pmax与指针建立关系。

scanf(“%d%d”,&x,&y);

z=(*p)(x,y用函数指针变量p代替函数,max

printf(“maxmum=%d”,z);

类比于数组指针。

指针函数:函数类型为指针型的函数称为指针型函数。其定义形式为类型说明符 *函数名(形参表) (类比于指针数组)其中函数名之前加了“*”号表示这是一个指针型函数,即返回值可以是一个字符串或一个指针变量。

例如: int *ap(int x, int y)表示ap是一个返回指针值得指针型函数,它返回的指针指向一个整型变量。

char *fun(char *t) /定义为指针型函数。

char *p=t;

return (p+strlen(t) /2); 返回值为p所指向的字符串,p指向的字符串为从e开始所以为efgh

main()

char *str=“abcdefgh”; 使str这个指针变量指向这个字符串。

str=fun(str);

puts(str);

有以下下程序段:

void f(int *p);

main()

int a[5]=,r=a;

f(r);printf(“%d”,*r);

void f(int *p所以输出结果为41

p=p+3;printf(“%d”,*p);

rp+3有以下程序段:

main()

char *s=“abc”; 指针变量s指向这个字符串。

do{ printf(“%d”,*s%10); s++;s即为a再对10取余为5,所以输出结果为567

while(*s);

有以下程序段:

void fun1(char *p)

char *q;

q=p;while(*q!=‘0’)

q)++qq)++之后如g变成h

所以程序运行结果为prohsn

C语言笔记

第一课时。c语言标准格式。include vidomain 以 开头的语句称为预处理指令。include语句不是必须的,但是如果一旦有该语句就必须把它放在文件开始处是standared input output header的缩写standared 标准input 输入output 输出header...

C语言笔记

c语言算法和数据类型。整型。基本类型 字符型注释 基本类型的特点是其不可实型 单精度型以再分解为其他类型双精度型数组型。数据结构 构造型 结构体型共用体型指针型空类型。一 常量。define 语句不以分号结尾,它可以放在源 的任何位置。不过在定义常量时,只有在它定义后的源 中才有效。是一个修饰符,在...

c语言笔记

1.if中别忘了 而不是 2.写完程序别忘了检查前后大括号 小括号是否完全照应。3.遇到几分之几的分数可以方程两边同时乘以一个数来消去分母。4.写指针题时看准指针对应的是行还是列。例 int a 4 3 int p a 0 列指针。int ptr 3 a 行指针。5.考虑好哪些量会随着循环不断改变。...