为您找到"

变量定义为:int *p[3], a[3];,( C )是正确的赋值。 81. A.p = &a[

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

c语言大神进 int a[2][3],*p; 怎样理解"对于 p=a;来说可以认为 p是

>>>首先,这相当于两个变量定义语句: int a[2][3]; int *p;所以第二个标识符p是int *类型没有疑问,这是教科书上讲的;此时p是一个指向int型数据的指针变量。>>>对于int a[2][3]的理解,可以把 int [3]看作一个整体,意为由三个连续整型数据组成的单元;而a[2]是一个数组,由两...

C语言指针的问题,求大神!!

在C语言中,数组名本身就是一个指向数组首元素的指针。通过指针可以方便地遍历数组元素,例如:int arr[] = {1, 2, 3}; int *p = arr; for { printf); }。指针与函数:函数参数可以通过指针传递,这样函数内部可以修改传入的变量的值。指针也可以作为函数的返回值,返回动态分配的内存地址等。

...int*; int a[3][3]; *p=a[0];//正确 p=&(a[0]);//不正确 为什么&(a...

int arr[3];arr类型是int*,但&arr不是int**,而是int(*)[3];你把一维数组看作是一种数据类型,就没这个问题了,c语言恰好提供了typedef这个东西:typedef int ta[3]; //把由3个int组成的数组看成一种新类型ta;那么int a[3][3]就可以写作 ta a[3]; //由3个ta类型组成的一维数组 ...

{ int a[3][3],*p,i; p=&a[0][0]; for(i=0;i<9;i++) p[i]=i; for(i...

二维数组在内存中是存储在一个连续的内存空间之中,并且是按行存储的。因此,我们定义的时候,都会要求一定要指明二维数组的列数,即int a[][5],b[2][6],这个5和6是一定要指明的,否则就会报错。当然了,那种直接初始化的不算。比如,定义int a[3][3], *p; p = a;这样就是说p指向了...

已知:int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12},C语言问题

int (*ptr)[3]=a这句,将a的首地址赋值给了ptr,ptr表示的是指向一个含有三个Int的数组的指针,((ptr+1)[2])等价于*((ptr+1)+2),等价于*(ptr+3),这表示从数组a的首地址向后移动3个单位,每个单位为一个含有3个Int的数组,所以一共向后移动了9个单位,即得出运行结果10!要想正确...

C语言大师帮忙,在线等

A、 4 B、 5 C、 6 D、 7 9、设变量定义为“int a[4];”,则表达式___不符合C语言语法。D A、*a B、a[0] C、a D、a++ 10、设变量定义为“int x, *p=&x;”,则&*p相当于___。 A A、p B、*p C、x D、*&x 11、有如下程序 int runc(int...

int a[2][3] int (*p)[3] = a;

a[3][2]={{1,2},{3,4},{5,6}};int (*p)[3] = a;(*P)代表的是行;则p指针指向的是函数3个元素(每个元素两个值)的数组;*(p+1)为这个数组第二个元素({3,4})的首地址,(*(p+1)+1)为{3,4}里的第二个元素,为4。

c语言中,关于指针int(*p)[4]和int*p指向二维数组a[3][4]初始化的问题...

int (*p)[4];int a[3][4],i,j;/*常规的初始化与输出*/ printf("input:\n");for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);printf("二维数组\n:");for(i=0;i<3;i++){ for(j=0;j<4;j++)printf("%d\t",a[i][j]);printf("\n");} /*用行...

main(){int a[]={1,2,3,4,5,6,7,8,9,0};*p;for(p=a;p<a+10;p++)print...

int a[]={1,2,3,4,5,6,7,8,9,0};int *p;for(p=a;p<a+10;p++){ printf("%d",*p);} 你这个i 很莫名其妙啊 上面的程序等同于下面这个程序 int a[]={1,2,3,4,5,6,7,8,9,0};int i;for(i=0;i<10;i++){ printf("%d",a[i]);} for (p=a ;p<a+10;p++)p...

c语言全面解析十个知识点大学生谨记

p++://合法因为p是一个指针,p++表示从当前向后移动了一个位置。对干上面的定义,a[i]、* (ati)、* (p+i)、p[]都是合法,都是取下标为i的元素值。所以: p++; 是使指针向后移动,(*p) +十是当前所指变量的值内容+1.9,若有定义:int a[3][22],*p[3l,iJ;p[3]中[优先级[高于*...
1 2 3 4 5 6 7 8 9

相关搜索