为您找到"

int a[3][2] = { 1,2,3,4,5,6 }, (*p)[2]; p = a; printf("%d\n",a...

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

int a[2][3]={1,2,3,4,5},定义int *b=a[0],求*(b+2)

a[0][0]==1 a[0][1]==2 a[0][3]==3 a[1][0]==4 a[1][1]==5 b指向a[0],即指向第一个三元素的起始位置,b+2就是a[0]+2,取其值就是a[0][2],即3

int a[6]={1,2,3,4,5,6},*p; p=a+2; k=*(p+2);h=*(p-2)+p[1]_百度知...

这个比较容易理解,因为a指向1,p=a+2,所以指向3,所以p-2指向1,p[1]为4,所以h=5

99. 若有定义int a[][3]={1,2,3,4,5,6,7,8,9};则表达式sizeof(a)/...

因为a[0]代表的是第一行的地址,所以此处sizeof(a[0])指的是一行的字节数。a[0] 是指第0行的3个元素,因而size of(a[0])=3 例如:int a[3][4]={1,2,3,4,5,6,7,8,9};相当于int a[3][4]={{1,2,3,4},{5,6,7,8},{9,0,0,0}};因此,a[1][3]=8, a[2]...

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

所以一共向后移动了9个单位,即得出运行结果10!要想正确表达a[1][2],应该是(*(ptr+1))[2],数组的运算符[ ]比间值运算符*的优先级高,(*(ptr+1))[2]表示a向后移动一个单位即三个Int,此时ptr指向4,再往后移动2个Int指向6。其实遇到这类问题画内存结构图比较容易理解了 ...

int a[ ]={1,2,3,4};*P=a;则值为3时的表达式是A)P+=2;*(P++);B)P+...

选 A。p+=2是使指针指向第三个数据;*(p++)是先使用*p再使p的值加一;*++p则先使p加一,在使用*p,此时的值是4.

int a[10]={1,2,3,4,5,6,7,8,9,0},*p; p=a; printf("%x\n",p); prin...

*n 这里 输出的也就是 0x194+sizeof(int)*9 注意,这里的194是16进制的。因为是0x输出。如果是sizeof(int) =4 也就是32/64位系统,那么输出为 0x194+4*9=0x194+0x24=0x1B8 输出1b8 如果是sizeof(int) =2 也就是16位系统,那么输出为 0x194+2*9=0x194+0x12=0x1A6 输出1a6 ...

...{ int a[]+{1,2,3,4,5,6,7,8,9,0},*p p=a; printf("%d\n",*...

不知道楼主是不是着急打错了,源程序应该如下:include<stdio.h> int main(){ int a[]={1,2,3,4,5,6,7,8,9,0},*p;p=a;printf("%d\n",*(p+9));} 这是一个指针指向数组,形成指针与数组元素相对应的问题。其中,定义了数组a[]和int型指针p,且使指针指向了数组a[],其实是将...

int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; printf("%d

是4,p指向数组的首元素,+3指向首元素后的第三个

int k,a[3][3]={1,2,3,4,5,6,7,8,9};

int a[3][3]={1,2,3,4,5,6,7,8,9};与 int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};等效,就是说,这个二维数组有3行、3列,可以看作 1 2 3 4 5 6 7 8 9 下面分析输出情况,k = 0时,2 - k = 2,输出a[0][2],就是3 k = 1时,2 - k = 1,输出...

int i;int a[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf("%d...

for(i=0;i<3;i++)printf("%d",a[2-i][i]);也就是在for循环中,输出数组的一个变量,具体是哪个值呢?我们继续看;for循环中,i从0开始直到i=2循环结束,每次循环取的值为数组中的第(2-i)行,第i列的值。因此,依次取的值为a[2][0], a[1][1], a[0][2]。因此,这段程序...
1 2 3 4 5 6 7 8 9

相关搜索