c++中如何将一串数字赋给一个数组

 我来答
游锦程穆旭
2019-10-15 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:34%
帮助的人:852万
展开全部
第一,一个int有32位,不止7位。
第二,可以用位操作运算符
取第n位(最低位为第0位)的方法为
(i
&
(1
<<
n))
>>
n.
其中<<表示左移,1<
>表示右移,比如二进制的1000
>>
2
就变成二进制的0010
所以上面的表达式的意思是把1左移n位,然后跟i按位与,这相当于除了第n位保留原值,其他位都填0。
然后把与之后的结果右移n位,相当于把第n位的值挪到第0位上。
所以,取二进制的方法为:
int
i
=
123456789;
int
a[32];
for(int
n=0;
n<32;
n++)
{
a[n]
=
(i
&
(1
<<
n))
>>
n;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式