为您找到"

数组问题 int a[5],*p;p=a;p=&a[0];p=&a;都是什么含义

"相关结果约100,000,000个

请问int (*p)[3];是什么意思?

int(*)[3]这个东西是指向类型为int[3]的指针,也就是说是指向一个长度为3的整型数组的指针。比如:int a[5][3]; // 一个二维数组,第一维长度为5,元素类型为int[3]int (&r)[3] = a[2]; // 一个类型为int[3]的引用,指向a中的第三个元素 int (*p)[3] = &r; // 指针...

1.设变量定义为"int a[2]={1,3},*p=&a[0]+1;"则*p的值是___

1、*p=3 2、"w+"]3、将str中的字符串输出到fp所指向的文件中(这个就是把HELLO写到PRN文件中)4、首先*a[2]是一个指针数组就相当于一个二维数组(这个你可以看成是a[2][3]的二维数组),而**p=a就是把这个二维数组的首地址赋值给p 那么p现在指向了二维数组中第一个字符的地址(p现在指向...

char a [10],*p;p=a="china"错在那里

你没有搞定字符数组的初始化和赋值的差别,字符数组的初始化可以用:char a[10]="hello";char a[10]={'h','e','l','l','0'} 等方式 但是你是赋值啊 复制建议采用 strcpy(a,"china")

int *ptr[5]=(int (*)[5])100;printf("%d",(int)(&(*(ptr+1)[5...

[5],int ptr[5]=(int [5])100也是不能 强制转换 的,帮你试了下,使用void做为转换也是不行的。分析这个(int)(&(*(ptr+1)[5])):(ptr+1)指向104的int*的地址,这里假设是指向A[M](ptr+1)[5])相当于ptr[6],越界了,如果B=((*(ptr+1))[5])还能解释通,为A[5];接着&B...

输出二维数组任一行任一列元素的值

这个是指针与数组结合的问题,你要弄明白得看这方面的内容。你代码中的p指针被定义为行指针,它是一个二级指针地址,它指向数组首地址的方式只有p=a;这一种,若是定义为int *p;则p指针被定义为列指针,是一个一级指针地址,它指向数组首地址的方式有:p=*a; p=a[0]; p=&a[0][0]; ...

C 语言指针问题,急!

c[4*p]=i;for(j=0;j<3;j++){ if(score[j][i]<60){ c[4*p+j+1]=score[j][i];} else{ c[4*p+j+1]=-1;} } p++;} } cnt=p; //注意要记录不及格人数 return c;} void main(){ int score[3][5];char name[5][32];int *c=NULL;int i,j,*p;int cnt; /...

c语言数组的定义

2、数组名的书写规则应符合标识符的书写规定。3、数组名不能与其它变量名相同。例如:int a;float a[10];是错误的。4、方括号中常量表达式表示数组元素的个数,如a[5]表示数组a有5个元素。但是其下标从0开始计算。因此5个元素分别为a[0], a[1], a[2], a[3], a[4]。5、不能在方括号...

关于C语言指针的问题

总之*p的结果是p所指向的东西,这个东西有这些特点:它的类型是p指向的类型,它所占用的地址是p所指向的地址。 例五: int a=12; int b; int *p; int **ptr; p=&a;//&a的结果是一个指针,类型是int*,指向的类型是int,指向的地址 是a的地址。 *p=24;//*p的结果,在这里它的类型是int,它所占用的...

C语言、二维数组指针中的 * 和 &

行指针1: a[0]—。。。行指针2: a[1]—。。。行指针3: a[2]—。。。4、我也不知道这样说对不对,反正我没试过,你不仿试试看。。。其实这些问题都没必要深究,刚开始学这部分,确实是非常难懂,但只要写的程序多了,用的多了,自然而然就懂了,最后,祝你成功 ...

“并且”用C语言怎么表示

并且用C语言表示方法如下:按位与 &:例子:int a=1,b=0。a=a&;b。结果a=0。=== 表达式之间的逻辑与 &;&。例子:if (a>;b &;&;a>;c);如果a>;b并且a>;c则...
1 2 3 4 5 6 7 8 9

相关搜索