社区
C语言
帖子详情
请问指针变量占用几个字节的存储单元?
q_v_i_t
2002-02-21 12:33:37
例如我定义了一个指向整型变量的指针p,那么它占用几个字节了??怎么能看出来了?
...全文
2780
46
打赏
收藏
请问指针变量占用几个字节的存储单元?
例如我定义了一个指向整型变量的指针p,那么它占用几个字节了??怎么能看出来了?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
46 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fangyanfeng
2002-03-04
打赏
举报
回复
其实,大家看一看网上流行的《高持量C++/C编程指南》全都明白了,何苦在这费心!
Congy
2002-03-04
打赏
举报
回复
to ddszhan(高等数学):
在32位系统中,已经没有near\far的区别了。
sweet
2002-03-04
打赏
举报
回复
不管指针变量指向哪种类型的变量,占几个字节跟操作系统有关,操作系统如果是32位的,则指针变量占4个字节(32/4),如果是64位的则,占8个字节。
操作系统是几位的又跟硬件有关,如果处理器是32位的,操作系统最高也就32位。
alamb
2002-03-03
打赏
举报
回复
to szxray(林云):
其实,编译器把高级语言汇编了之后就无所谓int、char等类型了,大家在内存中的空间分配都是相同的。
veinstone
2002-03-03
打赏
举报
回复
4
AlexXin
2002-03-02
打赏
举报
回复
32位4Bytes
16位2Bytes
与位数有关
COKING
2002-03-01
打赏
举报
回复
4
Cowboy22
2002-03-01
打赏
举报
回复
用sizeof(cowboy22)看看自己占了多少byte,结果...
cnss
2002-02-25
打赏
举报
回复
haha.真热闹
glyc
2002-02-25
打赏
举报
回复
处理器字长。
jiangchun_xn
2002-02-25
打赏
举报
回复
在c中,指针指向的类型决定指针运算的结果(比如++),它的位数就是取决于编译器,只是一个地址数值..比如DOS下,编译器大部分是16位,指针就是16位.
q_v_i_t
2002-02-25
打赏
举报
回复
好的,谢谢了!
szxray
2002-02-25
打赏
举报
回复
指针实际上只存储一个地址
指针类型的信息是由编译器来确定的,在执行程序中没有相关的信息
实际上可以用强制类型转换将一种类型的指针转换成另一中类型的指针
例如
char *p1;
int i;
int *p2=&i;
p1=(char*)p2; //在程序执行过程中,p1中存储的内容和p2中存储的内容将是一样的
但是在编译过程中,编译器根据指针的定义对p1++和p2++生成了不同的代码。
cnss
2002-02-25
打赏
举报
回复
lanying(蓝鹰):
p?++给编译器看的,不是直接翻译.
int是2个还是4个字节,是由编译器决定的.
指针是2个还是4个字节,也是由编译器决定的.
下面再回复的,如果没试过,就不要乱猜了.
darkay
2002-02-24
打赏
举报
回复
sizeof(int)
Mephisto_76
2002-02-24
打赏
举报
回复
跟操作系统有关!
dynamic_pump
2002-02-24
打赏
举报
回复
同意cnss的意见其实哪怕你用PIIIII…………的机子在TC中的位数也是2,就像zheng_can() 说的它没有用到eax,ebx这样的寄存器。
lanying
2002-02-24
打赏
举报
回复
不会这么简单吧?如果指针所需的内存单元是固定的,那int型,char型指针怎么区分?例如:
char *p1;
int *p2;
p1++;
p2++;
那还得保存类型信息,所以我认为不是固定的
asliuyang
2002-02-24
打赏
举报
回复
我知道我用的 TC2.0 中是两字节
garfield_82
2002-02-24
打赏
举报
回复
同意:32位机中是4字节,16位机为2字节
加载更多回复(26)
C语言中各类地址的含义及运用.pdf
C语言中各类地址的含义及运用.pdf
一个
指针
变量
占
几个
字节
呢?定义
指针
的基类型又有什么用呢?
一个
指针
变量
占
几个
字节
呢?定义
指针
的基类型又有什么用呢?
9.C语言之
指针
(5)
指针
变量
占
几个
字节
C语言之
指针
(5)
指针
变量
占
几个
字节
?
变量
所占内存sizeof(),
指针
变量
中存放的是什么
指针
变量
占用
多少
字节
我们讲过,
指针
变量
根据“基类型”的不同有 int * 型,float * 型,double * 型,char * 型等 但是我们前面在讲数据类型的时候讲过,int 型
变量
占用
4
字节
,float型
变量
占用
4
字节
,double类型
变量
占用
8
字节
,char类型
占用
1
字节
。那么“
指针
变量
”占多少
字节
呢?是不是基类型
占用
多少
字节
,该
变量
就
占用
多少
字节
呢?同样,用sizeof写一个程序看一下就知...
一个
指针
占
几个
字节
?原理是什么呢?
一个
指针
占
几个
字节
的问题,感觉会C语言的同学都知道。但是在面试过程中,面了
几个
同学,不是答忘记了,就是两个、四个的瞎蒙。。。 那么,一个
指针
到底占
几个
字节
呢? 其实,这个问题很简单,稍微上网一搜,你就知道: 一个
指针
在64位的计算机上,占8个
字节
; 一个
指针
在32位的计算机上,占4个
字节
。 这么简单的问题,为什么面试官愿意问呢?其实这个问题不是在考你的记忆能力,是在考察你的计算机基础能力。就比如,...
C语言
70,035
社区成员
243,244
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章