搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 问个C语言左移<<的问题
标题:
问个C语言左移<<的问题
只看楼主
zjwyczj
等 级:
新手上路
帖 子:4
专家分:0
注 册:2013-6-1
结帖率:
0
楼主
已结贴
√
问题点数:20 回复次数:8
问个C语言左移<<的问题
随便写下啦,这个问题比较弱智,别取笑我啊
uchar a=0x1;
uchar b=0x2;
uchar c=0x3;
uchar d=0x3;
void fun(void)
{
uint i;
i=a|(b<<8)|(c<<16) |(d<<24) ;
}
i等于多少,why????
疑惑是abcd是8位的,移位了8位应该全0了??
但是实际上是a,b,c,d变成32位的(跟赋值左式一样??)?再移位??
求解、
搜索更多相关主题的帖子:
void
弱智
C语言
2013-06-01 20:39
lzj12530
等 级:
蝙蝠侠
威 望:
2
帖 子:264
专家分:841
注 册:2013-3-28
第
2
楼
得分:7
结果应该是1吧
C++菜鸟
2013-06-01 20:44
zjwyczj
等 级:
新手上路
帖 子:4
专家分:0
注 册:2013-6-1
第
3
楼
得分:0
回复 2楼 lzj12530
不是1,是0x04030201
2013-06-01 20:48
lzj12530
等 级:
蝙蝠侠
威 望:
2
帖 子:264
专家分:841
注 册:2013-3-28
第
4
楼
得分:0
刚开了帖子,移位操作真是转换为32位来进行的
[
本帖最后由 lzj12530 于 2013-6-1 21:23 编辑
]
C++菜鸟
2013-06-01 21:12
zjwyczj
等 级:
新手上路
帖 子:4
专家分:0
注 册:2013-6-1
第
5
楼
得分:0
回复 4楼 lzj12530
额,哪的帖子,发给我看看啊。我也疑惑中,发个链接给我
2013-06-01 21:28
lzj12530
等 级:
蝙蝠侠
威 望:
2
帖 子:264
专家分:841
注 册:2013-3-28
第
6
楼
得分:0
百度百科 左移运算符
C++菜鸟
2013-06-01 21:39
zjwyczj
等 级:
新手上路
帖 子:4
专家分:0
注 册:2013-6-1
第
7
楼
得分:0
回复 6楼 lzj12530
thanks
2013-06-01 21:57
dengjiajun
来 自:广州
等 级:
论坛游民
帖 子:13
专家分:45
注 册:2013-5-2
第
8
楼
得分:7
#include<stdio.h>
#include<string.h>
void main()
{
unsigned char a=0x1;
unsigned char b=0x2;
unsigned char c=0x3;
unsigned char d=0x3;
unsigned int i;
i=a|(b<<8)|(c<<16) |(d<<24) ;
printf("%x",i);
}
结果是:3030201
所以我的是按32位来的
2013-06-01 23:59
gg0013
等 级:
论坛游民
帖 子:25
专家分:16
注 册:2012-11-26
第
9
楼
得分:7
帮顶一下
2013-06-02 01:44
9
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-414214-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.278362 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved