社区
C语言
帖子详情
急,请教一个位操作的问题
verymorose
2004-07-19 12:45:18
请问各位,望不吝赐教:
怎么用8个ASCII码组成的字符串,去掉每个ASCII字符最前边一位的0,(剩7位,一共7*8=56位)重新组成一个7字节长的字符串?
急,拜托了
...全文
173
9
打赏
收藏
急,请教一个位操作的问题
请问各位,望不吝赐教: 怎么用8个ASCII码组成的字符串,去掉每个ASCII字符最前边一位的0,(剩7位,一共7*8=56位)重新组成一个7字节长的字符串? 急,拜托了
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
TalosChen
2004-07-19
打赏
举报
回复
不好意思,一时疏忽。
不客气。
verymorose
2004-07-19
打赏
举报
回复
好像应该是bit[i]=tmp>>7
多谢了
verymorose
2004-07-19
打赏
举报
回复
main(){
char a='a';
char tmp;
int i;
unsigned char bit[8];
for(i=0;i<8;i++){
tmp=a<<i;
bit[i]=tmp>>8;
}
a='1';
for(i=0;i<8;i++){
a|=bit[i]<<(7-i);
}
printf("%c\n",a);
}
楼上的哥们,不好使阿,打印出来是一个乱字符
TalosChen
2004-07-19
打赏
举报
回复
char a='a';
unsigned char bit[8];
for(i=0;i<8;i++){
tmp=a<<i;
bit[i]=tmp>>8;
}
这是将a的八位从高到低依次放入bit[8]中,即bit[0]为最高位。
for(i=0;i<8;i++){
a|=bit[i]<<(7-i);
}
这是第二个例子
应该够清楚了吧
freefalcon
2004-07-19
打赏
举报
回复
void main()
{
char a[8] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'};
char b[7];
for(int i=0; i<7; i++)
b[i] = (a[i] << (i+1) ) | ( ((unsigned char)a[i+1]) >> (6-i) );
}
verymorose
2004-07-19
打赏
举报
回复
比如说如何把一个字符的八位拆开,把每一位写入一个字符变量
以及如何把8个由0和1组成字符,合起来写入一个字符变量
拜托了,就给上边两个例子好吗
verymorose
2004-07-19
打赏
举报
回复
我是新手,对位操作不熟悉阿,能不能给一点例子阿,多谢了
我不是做DES
TalosChen
2004-07-19
打赏
举报
回复
先用一个56位的数组,如 unsigned char bit[56] 将这56位用位运算符>>或<<写到这个数组里(一位对应数组中的一个元素),然后再依次将这已读出的56未写入最终的7字节字符串即可。具体做的时候,可以先将bit[56]七位一组,写一个循环依次处理要处理的八个字符。然后再八位一组,依次写入最终的字符串。
ps.你要做的是DES吗?
verymorose
2004-07-19
打赏
举报
回复
急啊,怎么没人回答,急死我了,拜托了
【工作总结】超市收银员年度工作总结模板.doc
5. **工作细节管理**:在日常工作中,收银员需要注重每
一个
细节,例如保持收银台整洁,熟练掌握收银流程,准确无误地进行结账,有效处理退款和兑换等事宜,确保收银过程的高效和顺畅。 6. **工作反思与总结**:定期...
医生个人年终述职报告2021.docx
我深知,医疗行业是
一个
充满挑战的行业,我必须不断地强化自身的服务意识,提升服务质量,才能满足广大患者的需求。 在医疗业务能力提升方面,我始终坚持不断地学习新的医学知识,跟踪最新的医学进展。我不仅深入...
精品工作总结范文模板-2017年医院医生个人工作总结.docx
同时,结合临床实践,不断提升分析
问题
和解决
问题
的能力,养成严谨的医疗操作习惯,预防医疗事故,确保患者安全。 【科研思维与临床经验】 科研思维是医生成长的重要部分,通过学习新研究成果,可以拓宽视野,创新...
有关银行员工的述职报告锦集七篇.docx
- **
急
客户之所
急
**:快速响应客户的需求,解决客户面临的紧
急
问题
。 3. **不断学习与成长**: - **不耻下问**:面对不懂的
问题
或业务,积极向同事学习
请教
。 - **实践出真知**:通过实际工作中的经验积累,不断...
必备医生述职报告集锦五篇.docx
- **以患者为中心**:强调医生应始终将患者的需求放在首位,关注患者感受,提供人性化服务,做到换位思考,
急
患者所
急
,想患者所想。 2. **医疗质量**: - **规章制度**:医疗质量和安全的保障离不开完善的规章...
C语言
70,026
社区成员
243,244
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章