鱼C论坛

 找回密码
 立即注册
查看: 1622|回复: 6

devC和VC指针长度不同的问题

[复制链接]
发表于 2020-6-6 12:38:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>

void sr(int *a);

int main(){

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

printf("数组a长度为%d\n",sizeof(a));

sr(a);

return 0;

}

void sr(int *a){

printf("指针a长度为%d\n",sizeof(a));

}

用devC得到的指针a的长度是8,用VC是4,不同的原因是因为devC是默认64位的环境下运行的指针而VC是32位吗?萌新求解答
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-6 12:42:55 From FishC Mobile | 显示全部楼层
跟编译有关吧,64位编译的话指针8字节,32位编译4字节
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-6 12:45:56 | 显示全部楼层
看 sizeof(long)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-6 13:03:35 | 显示全部楼层

不如 sizeof(&main)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-6 13:16:43 | 显示全部楼层
我试了下,确实32位编译是4个字节64位编译是8个字节,应该就是这个原因
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-6 13:51:54 | 显示全部楼层

老哥sizeof(&main)是怎么个用法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-6 14:12:53 | 显示全部楼层
1sun15718 发表于 2020-6-6 13:51
老哥sizeof(&main)是怎么个用法

&main 是个指针,sizeof 指针你应该知道吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-13 15:56

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表