找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1219|回复: 4
收起左侧

如何将一个存有10进制数的int变量拆分char型变量,char型变量的数值仍然是十进制数

[复制链接]
ID:33544 发表于 2019-7-20 21:11 | 显示全部楼层 |阅读模式
如何将一个存有10进制数的int变量拆分成2个char型变量,char型变量的数值仍然是10进制数
回复

使用道具 举报

ID:517466 发表于 2019-7-20 23:15 | 显示全部楼层
是不是这个意思:比如1024,变成两个char型变量,一个是10,一个是24?这样的话,你只需要把整数除以100得到一个char数据,对100取余得到另一个数据。
int a;
char b=a/100;
char c=a%100;
诸如这样来处理。
回复

使用道具 举报

ID:377268 发表于 2019-7-20 23:37 | 显示全部楼层
这个问题我之前碰到过,你是进行数据传输么,不需char变量仍是10进制的。直接将int型取指针,然后把指针强制转换成char,再发送指针指向地址内的数据(不管他是什么,接收后反过来转换就行了)。简便点的方法就是共同体,共享内存,union {int a;char c[2];}turn.;  ,
回复

使用道具 举报

ID:33544 发表于 2019-7-21 07:12 | 显示全部楼层
是的,是将int拆分如将int中的1234拆分为2个char分别是12和34
回复

使用道具 举报

ID:587560 发表于 2019-7-21 08:28 | 显示全部楼层
共用体比较方便
typedef union _BIT16 {
    INT16S  shw;
    INT16U  uhw;
    INT8S   sbyte[2];
    INT8U   ubyte[2];
    struct {
        FIELD_BITS16
    } bits;
} BIT16
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表