c语言中有没有办法可以知道一个变量的类型

虽然编写人知道是什么类型,但是如果下位机给上位机发送数据,上位机不知道数据的类型,需要判断,请问有没有方法可以判断一个数据是整数、实数?

不可能坐到这点的,唯一的方法就是譬如说你下位机要给上位机发送nk字节的char类型数据,那么你可以在发送这些数据之前,先发一个用以标识接着发送数据类型的flag(这个flag可以是你自己定义的结构体,或者枚举类型,譬如说 typedef enum{thechar,thenumber,thestruct}TYPE;)这样你先发送一个TYPE类型的内容给上位机,上位机通过这个TYPE的值来判断接着要接收什么数据。
而我之所以说不可能做到直接判断是什么数据类型,是因为你想想看,同样21这个数据,既可以是int,也可以是char,更可以是UINT或者别的,所以怎么可能光凭这个数据本身来判断是什么数据,要是能做到那样的话,那通讯的时候也就不需要“协议”这个概念了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-05-05
没有,绝对没有
相似回答