您的位置:

byte转字符c语言,C#字符串转byte

本文目录一览:

c语言 二进制的byte数组转化为int数组

如果byte里面保存的是数值,那么你可以调整顺序(低位在前,高位在后)之后,通过memcpy直接转换:

memcpy(intVar, byteArray, sizeof(int));

如果byte保存的是数字的字符,那么你需要进行转换,具体如何转换,要看byte里面保存的是什么格式了。

c语言,BYTE数组如何转为string

直接 str = a 不过这样并不安全 可能根本不会出现\0这样的

但你可以再弄一个 b[11]的数组 再把a赋给b把b[11]='\0'

然后 str = a;

C语言 16进制的字符串“000100010019” 转化成Byte byte[6] = {0x00, 0x01, 0x00, 0x01, 0x00, 0x19}

ANSI C中貌似没有Byte吧? 下述代码中用typedef定义其为unsigned char,如果你用的C编译器中已经有Byte的定义,去除typedef那行就好了。

基本算法就是从字符串的最左端开始,每两个字符组成一个Byte,存储到byte数组的合适位置。

#include stdio.h

typedef unsigned char Byte;

void s2bytes(char *str, Byte *r)

{

 int i=0;

 Byte b;

 while(*(str+i)!='\0')

 {

  b=(*(str+i)-'0')*16+ *(str+i+1)-'0';

  i+=2;

  *r++=b;

 }

}

int main() 

    char str[]="000100010019";

    Byte ba[6];

    int i;

    s2bytes(str, ba);

    for(i=0; i6; i++)

     printf("%x ", ba[i]);

    printf("\n");

    return 0; 

}

C语言中将一个字节数据转换成对应十进制数字字符串

#include stdio.h

int Bin2Dec(char bin[]) {

int i,num = 0;

for(i = 0; bin[i]; ++i) {

if(bin[i] = '0'  bin[i] = '1')

num = 2 * num + bin[i] - '0';

}

return num;

}

int main() {

char s[5][20] = {"0010000","1101001001010","111000101010101","1101001001001010","10101000010101"};

int i;

for(i = 0; i  5; ++i)

printf("%20s : %d\n",s[i],Bin2Dec(s[i]));

printf("\n完成!\n");

return 0;

}

C语言2进制转字符问题

#include stdio.h

#include stdlib.h

int ByteToBit(char ch, char bit[8])

{

int cnt;

for(cnt = 0;cnt 8; cnt++)

{

*(bit+cnt) = (chcnt)1;

}

return 0;

}

int BitToByte(char bit[8],char *ch)

{

int cnt;

*ch = 0;

for(cnt = 0;cnt 8; cnt++)

{

*ch |= *(bit + cnt)cnt;

}

return 0;

}

int main()

{

int i;

int ByteToBit(char ch, char bit[8]);

int BitToByte(char bit[8],char *ch);

char b[8];

char c,s,*f;

f=s;

scanf("%c",c);

ByteToBit(c,b);

for(i=0;i8;i++)

{

printf("%d ",b[i]);

}

BitToByte(b,f);

printf("\n%d\n",s);

return 0;

}

你的代码有问题, 我已经给你改了, 你自己对比一下吧.

C 字节数组转换成字符串

你说的bytes数组是指的什么?仍然是asc编码吗?如果是这样,那你后面是可以用strcpy的。strcpy就是按字节复制。

另外,定义字符串默认都是按照asc或者gb2312来存储的,这种编码都对单字节进行操作。如果是unicode,那么这就需要转换了,这时候再使用strcpy就会出问题。