| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1249 人关注过本帖
标题:字节数组不使用循环转换成整数型数组
只看楼主 加入收藏
nmgbtzyf
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2020-12-1
结帖率:0
收藏
 问题点数:0 回复次数:3 
字节数组不使用循环转换成整数型数组
字节数组不使用循环转换成整数型数组
搜索更多相关主题的帖子: 数组 循环 字节 转换 整数 
2021-03-10 18:23
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
转换指针类型
或用联合体:
程序代码:
#include <stdio.h>
#include <string.h>
int main()
{
    union data {char s[10]; int a[2];};
    union data d;
    d.a[0] = 1145258561;
    d.a[1] = 1684234849,
    printf("%d, %.4s\n",d.a[0], d.s);
    printf("%d, %.4s\n",d.a[1], &d.s[4]);
    strcpy(d.s, "ABCDabcd");
    printf("%d, %.4s\n",d.a[0], d.s);
    printf("%d, %.4s\n",d.a[1], &d.s[4]);
    return 0;
}
2021-03-10 20:04
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
反过来可以,强制类型转化就行了(在严格别名中有个例外,就是类型双关为char兼容类型);
但正向不行,因为违反了严格别名的规定。在标准中只有 memcpy 函数可以消除
2021-03-11 13:19
nmgbtzyf
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2020-12-1
收藏
得分:0 
很感谢你的回答,但是我的功底还是学的不到位,联合体一直没有应用过
看了一些资料。  似乎可以达到我想要的效果。  但是还需要具体的测试。   
如果有问题还要麻烦你谢谢!
2021-03-11 21:08
快速回复:字节数组不使用循环转换成整数型数组
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013855 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved