您的位置:首页 > 其它

若有定义:int aa[ 8];&aa[0]++不能代表数组元aa[1]的地址,&aa[0]+1 、&aa[1] 、aa+1 都可以表示

2015-01-01 19:09 459 查看
#include <stdio.h>

#include <malloc.h>

#include <string.h>

void main() //1 代码区

{

char arr[]={'6','7'};

char *i;

i=&arr[0]+1;//这里加1,就像arr的首地址为0012ff44,&arr[0]+1则这句就表示的结果为0012ff45,因为char是一个字符。

printf("%c",*i);
}

改为整型

#include <stdio.h>

#include <malloc.h>

#include <string.h>

void main() //1 代码区

{

 int arr[]={6,7};

int * i;

i=&arr[0]+1;

printf("%c",*i);

}

则这时的地址arr为


再执行这句时i=&arr[0]+1;

i的地址为0012ff3c,*i为0012ff44

整型是4个字节,所以
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐