c语言字符串转成byte数组
发布网友
发布时间:2022-05-03 08:05
我来回答
共4个回答
热心网友
时间:2023-10-15 19:11
c语言中没有byte这种类型,这是计算机中存储信息的单位。
char 是字符型
byte 是字节型(0 - 255)
在参与算术运算是char类型会自动转为整型;如字符A会转为对应ASCII码65.
char是用来表示一个字符,而不是一个字,因为一个字要占用两个字节。而存储一个ANSI字符只需一个字节。注意,强调是ANSI字符,而不是Unicode字符。因为Unicode要占用两个字节。
byte类型是最自由的一种。它就占用一个字节,但没有定义这个字节拿来干什么。char定义为一个Unsigned Byte类型。也就是无符号的一个字节。它将一个字节的8位全占用了。可以表示的数据范围是0到255之间。
如果你确定处理的字符串是标准的ANSI字符串,那不必转换也可以直接一个字节一个字节地处理。如果要处理的字符串不定或是统一的Unicode字符串则要进行转换后进行处理。
热心网友
时间:2023-10-15 19:11
c语言中没有byte这种类型,这是计算机中存储信息的单位。
char 是字符型
byte 是字节型(0 - 255)
在参与算术运算是char类型会自动转为整型;如字符A会转为对应ASCII码65.
char是用来表示一个字符,而不是一个字,因为一个字要占用两个字节。而存储一个ANSI字符只需一个字节。注意,强调是ANSI字符,而不是Unicode字符。因为Unicode要占用两个字节。
byte类型是最自由的一种。它就占用一个字节,但没有定义这个字节拿来干什么。char定义为一个Unsigned Byte类型。也就是无符号的一个字节。它将一个字节的8位全占用了。可以表示的数据范围是0到255之间。
如果你确定处理的字符串是标准的ANSI字符串,那不必转换也可以直接一个字节一个字节地处理。如果要处理的字符串不定或是统一的Unicode字符串则要进行转换后进行处理。
热心网友
时间:2023-10-15 19:11
1、C这么灵活,通常不用转。
char a[1024]="hello world!";
byte *b=(byte*)a;
//这时b就等同于转了,直接用b[123]等就可以
2、强行转需要复制,浪费一倍内存。
#include<string.h>
...
...
char a[1024]="hello world!";
byte b[1024];
memcpy(b,a,1024);
热心网友
时间:2023-10-15 19:12
byte是什么?自己定义的类型?
C基本类型没有byte这个类型,C的char就是一个字节。相当于一个
byte。追问就是想问字符串怎么转成字节数组
追答char []就是字节数组。
关键你要干什么?要字节数组来干什么?
热心网友
时间:2023-10-15 19:11
1、C这么灵活,通常不用转。
char a[1024]="hello world!";
byte *b=(byte*)a;
//这时b就等同于转了,直接用b[123]等就可以
2、强行转需要复制,浪费一倍内存。
#include<string.h>
...
...
char a[1024]="hello world!";
byte b[1024];
memcpy(b,a,1024);
热心网友
时间:2023-10-15 19:12
byte是什么?自己定义的类型?
C基本类型没有byte这个类型,C的char就是一个字节。相当于一个
byte。追问就是想问字符串怎么转成字节数组
追答char []就是字节数组。
关键你要干什么?要字节数组来干什么?
热心网友
时间:2023-10-15 19:12
C语言里没有byte类型,估计你这个byte是char或者unsigned char的别名
热心网友
时间:2023-10-15 19:12
C语言里没有byte类型,估计你这个byte是char或者unsigned char的别名