c语言,int赋值给char

是这样写的 char c[4]; 我就是想吧int赋给char; memcpy(c,4),i; int i=100,因为int占4bit 所以我给char也分了4bit 但是总报错哦 不好意思 我写错了 是占4个byte 不是位 还有 memcpy 里的 参数写饭了...

第1个回答  2019-07-14
  可以按照下面代码示意的内容操作,即可完成赋值:
char c[4];
int i=100;
*(int*)c = i;
  也可以使用memcpy,示意代码如下:
memcpy(c,&i,sizeof(i));
  推荐使用第一种方法,这样当要将值回传的时候,只需要按照下面的操作即可
i = *(int*)c;
  灵活使用指针类型转换,可以极大的简化程序代码,这个问题即是一个好例子
相似回答
大家正在搜