wangpengcheng 发表于 2014-6-29 15:11:26

求助:关于KEIL中int型的取值范围是多少?(已解决)

本帖最后由 wangpengcheng 于 2014-6-29 16:23 编辑

我目前遇到的问题是:在MQX中,读取文件的时候,用_mqx_int _io_fseek( MQX_FILE_PTR file_ptr,_file_offsetoffset,   _mqx_uintmode)函数来定位,但是我看了一下MQX中 _file_offset 的定义是int型的,我的理解是从-65535到+65535,所以当我文件超过64K的时候,问题就来了,我写不进去了,因为offset变成负数了!

看看哪位高手对此有什么见解?

zhw950 发表于 2014-6-29 15:29:51

keil 中 int 占两个字节,范围-32768+32767, unsigned int 0-65535。用long型,占用4个字节,范围:-2147483648+2147483647

wangpengcheng 发表于 2014-6-29 15:56:29

zhw950 发表于 2014-6-29 15:29
keil 中 int 占两个字节,范围-32768+32767, unsigned int 0-65535。用long型,占用4个字节,范围:- ...

刚才跟了一下,好像问题不在这里,我写100000进去也没有问题啊!还得再看看!

lcofjp 发表于 2014-6-29 16:07:34

wangpengcheng 发表于 2014-6-29 15:56
刚才跟了一下,好像问题不在这里,我写100000进去也没有问题啊!还得再看看! ...

一般8位、16位单片机的int位16位。32位机的int位32位。

wangpengcheng 发表于 2014-6-29 16:23:27

lcofjp 发表于 2014-6-29 16:07
一般8位、16位单片机的int位16位。32位机的int位32位。

是的,问题不在范围上,在MSD中,我刚才跟踪了一下,发现MSD在拷文件的时候不定时就跳到文件开始的位置重新拷贝,郁闷!此帖结帖了!谢谢!

lyzhangxiang 发表于 2014-6-29 20:42:22

开始玩mqx了,期待分享

songjie 发表于 2014-7-3 12:28:51

用  sizeof 可以判断int吧~

jiang887786 发表于 2014-9-3 11:23:06

过来学习的,int一般最高位要占用一位的吧。

wangpengcheng 发表于 2014-9-3 11:23:57

songjie 发表于 2014-7-3 12:28
用  sizeof 可以判断int吧~

sizeof只能判断它占用多少个byte空间!

wangpengcheng 发表于 2014-9-3 11:24:19

jiang887786 发表于 2014-9-3 11:23
过来学习的,int一般最高位要占用一位的吧。

是的,只是最高位被作为正负号用!

浪里白条 发表于 2014-9-3 11:27:55

wangpengcheng 发表于 2014-9-3 11:24
是的,只是最高位被作为正负号用!

有符号数在C语言里不是用的补码的形式?

wangpengcheng 发表于 2014-9-3 11:29:16

浪里白条 发表于 2014-9-3 11:27
有符号数在C语言里不是用的补码的形式?

好像是!记忆模糊!

浪里白条 发表于 2014-9-3 11:30:22

wangpengcheng 发表于 2014-9-3 11:29
好像是!记忆模糊!

如果是补码的话,就不是以最高位做符号位了。

wangpengcheng 发表于 2014-9-3 11:32:42

浪里白条 发表于 2014-9-3 11:30
如果是补码的话,就不是以最高位做符号位了。

解释一下!      

songjie 发表于 2014-9-3 12:05:30

wangpengcheng 发表于 2014-9-3 11:23
sizeof只能判断它占用多少个byte空间!

多少字节 不就判断出了取值的 范围啊~~~!!!~

wangpengcheng 发表于 2014-9-3 12:06:23

songjie 发表于 2014-9-3 12:05
多少字节 不就判断出了取值的 范围啊~~~!!!~

呵呵,坑在这儿呢,脑子笨,没转过来!

songjie 发表于 2014-9-3 12:08:43

wangpengcheng 发表于 2014-9-3 12:06
呵呵,坑在这儿呢,脑子笨,没转过来!

2字节是16位2的16次方啊
4字节是32位2的32次方啊

没有问题吧~~~

浪里白条 发表于 2014-9-3 12:08:55

wangpengcheng 发表于 2014-9-3 11:32
解释一下!

哈,这个我也忘了,百度了一下
http://baike.baidu.com/view/377340.htm?fr=aladdin

wangpengcheng 发表于 2014-9-3 12:11:01

songjie 发表于 2014-9-3 12:08
2字节是16位2的16次方啊
4字节是32位2的32次方啊



有问题,我说的是int型,不是uint形{:titter:}

wangpengcheng 发表于 2014-9-3 12:12:20

浪里白条 发表于 2014-9-3 12:08
哈,这个我也忘了,百度了一下
http://baike.baidu.com/view/377340.htm?fr=aladdin

看了,不是补码,只是最高位是正负号!

浪里白条 发表于 2014-9-3 12:13:05

wangpengcheng 发表于 2014-9-3 12:12
看了,不是补码,只是最高位是正负号!

原来如此,学习了。

songjie 发表于 2014-9-3 12:14:12

wangpengcheng 发表于 2014-9-3 12:11
有问题,我说的是int型,不是uint形

对啊~~~int啊    -2的16次方/2~ + 2的16次方/2(加1还是减1)

uint是 无符号 int型啊~~~0 ~ 2的16次方

没问题吧~

wangpengcheng 发表于 2014-9-3 12:15:18

songjie 发表于 2014-9-3 12:14
对啊~~~int啊    -2的16次方/2~ + 2的16次方/2(加1还是减1)

uint是 无符号 int型啊~~~0 ~ 2的16 ...

{:sweat:} 没问题,你厉害!

浪里白条 发表于 2014-9-3 12:20:03

songjie 发表于 2014-9-3 12:14
对啊~~~int啊    -2的16次方/2~ + 2的16次方/2(加1还是减1)

uint是 无符号 int型啊~~~0 ~ 2的16 ...

32位系统中也是2的16次方?

songjie 发表于 2014-9-3 12:21:19

浪里白条 发表于 2014-9-3 12:20
32位系统中也是2的16次方?

我是打比方~~~的
32位的就是2的32次方~~

songjie 发表于 2014-9-3 12:21:52

浪里白条 发表于 2014-9-3 12:20
32位系统中也是2的16次方?

看17 楼吧~~~~

我的另外一个回复~

songjie 发表于 2014-9-3 12:22:33

wangpengcheng 发表于 2014-9-3 12:15
没问题,你厉害!

没问题吧~~~ 别吓我,要不然我害怕~

浪里白条 发表于 2014-9-3 12:22:54

songjie 发表于 2014-9-3 12:21
看17 楼吧~~~~

我的另外一个回复~

看了,懂了。

songjie 发表于 2014-9-3 12:26:38

浪里白条 发表于 2014-9-3 12:22
看了,懂了。

您的飞币多的只能显示 1万 了~~

xlxbangel 发表于 2014-9-3 12:27:04

c语言书上就有讲的

浪里白条 发表于 2014-9-3 12:27:39

songjie 发表于 2014-9-3 12:26
您的飞币多的只能显示 1万 了~~

飞币1W封顶,正好等您呢。

wangpengcheng 发表于 2014-9-3 12:29:49

浪里白条 发表于 2014-9-3 12:27
飞币1W封顶,正好等您呢。

小白,你又调皮了!{:titter:}

wangpengcheng 发表于 2014-9-3 12:30:32

xlxbangel 发表于 2014-9-3 12:27
c语言书上就有讲的

唉,人老了,脑子记不住了!

xlxbangel 发表于 2014-9-3 12:31:12

wangpengcheng 发表于 2014-9-3 12:30
唉,人老了,脑子记不住了!

看来我还不够老啊

wangpengcheng 发表于 2014-9-3 12:32:51

xlxbangel 发表于 2014-9-3 12:31
看来我还不够老啊

要不要拔苗助长啊!{:titter:}

xlxbangel 发表于 2014-9-3 12:34:03

wangpengcheng 发表于 2014-9-3 12:32
要不要拔苗助长啊!

额。。。这个就算了

wangpengcheng 发表于 2014-9-3 12:35:00

xlxbangel 发表于 2014-9-3 12:34
额。。。这个就算了

{:titter:} {:titter:}

songjie 发表于 2014-9-3 12:37:33

,这贴成了 对话框了~~~

wangpengcheng 发表于 2014-9-3 12:40:48

songjie 发表于 2014-9-3 12:37
,这贴成了 对话框了~~~

QQ群{:titter:}

dengterry 发表于 2014-9-3 13:17:33

MQX还没看过 顶顶
页: [1]
查看完整版本: 求助:关于KEIL中int型的取值范围是多少?(已解决)