如何理解inta[5]={0,1,2,3,4}?

作者&投稿:闭贫 (若有异议请与网页底部的电邮联系)
int a[5]={0,1,2,3,4},*p1=&a[1],*p2=&a[4];
p2-p1=3;
设a[0]的地址为0x00,十进制为0
那么a[1]的地址为0x04,十进制为4
那么a[2]的地址为0x08,十进制为8
那么a[3]的地址为0x0e,十进制为12
那么a[4]的地址为0x10,十进制为16
那么a[4]的地址 - a[1]的地址为16-4 = 12;
因为int类型占4个字节 12/4 = 3;

~

有一下语句:int a[5]={1,3,5,7,9},*p=a,如果数组a的
答:表达式p++的值就是p的当前值,也就是a的地址1000。因此输出结果为1000。

如何理解inta[3]={1,2,3,4};?
答:这题有意思,首先 int a [] [3] = {1,2,3,4,5,6}; 是一个二维数组,但是内存空间中这些数据的存储是连续的。可以理解为 int a [5] = {1,2,3,4,5,6}; a存储的都是数组的首元素地址,区别在于以为一维数组的下标代表的是地址,二维数组下标代表的是行和列的个数。int (*p)[3...

inta[][]={1,2,3,4,5,6};
答:a[0][1]=2 a[0][2]=3 a[1][0]=4 a[1][1]=5 a[1][2]=6 虽然你的列数固定了,但是行数没固定,那么数组会根据你的初始数据来自动生成行数。例如 int a[][3]={1,2,3,4,5,6,7};那么结果是:a[0][0]=1 a[0][1]=2 a[0][2]=3 a[1][0]=4 a[1][1]=5 ...

已知int a[5]={1,3,5,7,9},*p=a;,则表达式*p+3的值是___.怎么算的...
答:表达式*p+3的值是4 p是指向数组a的指针,*p=a就是把p指向数组a的首地址,也就是a[0]的地址。所以*p的值就是a[0]的值,也就是1,所以*p+3的值就是1+3=4了。不清楚的话请追问我。o(∩_∩)o 望采纳 哦 ~

【急】小弟我刚学C语言 由于自学 无法理解变量的意思 望高手解答下_百 ...
答:这是编译原理里的:静态变量、外部变量、寄存器变量和自动存储变量 和我一样喜欢思考问题(我开始学连个#include前面为什么是#号都要找为什么用这个符号?有什么原因和意义?)在内存中分为5个区。全局静态区:就你说的静态变量,外部变量也是。寄存器:简单的说就是CPU里的“内存”,有何作用呢?计算机...

C++中inta[]={1,2,3,4}是什么意思?
答:include <stdio.h>#include <malloc.h>#include <stdlib.h>#include <string.h>int main(){ int size; printf("输入建立元素的个数:"); scanf("%d",&size); int *p = (int *)malloc(sizeof(int) * size); if (p == 0) { printf("不能分配内存\n"); ret...

c语言改错题,输入5个数,然后输出,请教这题怎么改?为什么?
答:printf("\n");} void OutputArray(int *pa,int n){ int i=0;for(*(pa+i);i<n;i++){ printf("%4d",*(pa+i));} printf("\n");} pa+i即数组名加数字表示数组元素中元素的地址,加0表示第一个,依次类推,你这一共5个元素,所以循环的时候i<5,i++到4刚好是第五个元素 ...

C语言中,有一个二位数组inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}...
答:要明白这事先要弄清二维数组的存储问题 先说一维数组,举例a[3],数组名称a就是指针,就是这个数组的起始地址。其中各元素的地址就是a, a+1,a+2. 它们的值分别是*a, *(a+1), *(a+2),也就是a[0],a[1],a[2].二维数组int a[3][4],数组名称a则是指针的指针,它指向指针数组a[3]...

一个C语言指针的小问题
答:但是对其进行运算时的意义是不同的。对于一个多维数组类似。有下面一个例题你可以看一下,分析一下结果。include<iostream> using namespace std;int ints[5]={1,2,3,4,5};int a[3][3]={1,2,3,4,5,6,7,8,9};int main(){ int i,j;for(i=0;i<5;i++)cout<<&ints[i]<<...

有数组定义语句:inta[10]={1,2,3,4,5};,数组元素a[5]~a[9]的值为...
答:【答案】:a[5]=0、a[6]=0、a[7]=0、a[8]=0、a[9]=0 解析:在C语言中,初始化二楼部分数组后,未初始化的部分数组元素的值会被默认为0。