gpt4 book ai didi

c# - byte vs char vs int 类型

转载 作者:太空宇宙 更新时间:2023-11-04 03:41:55 25 4
gpt4 key购买 nike

我有一个小基本问题。在 C 中没有 byte 类型,所以我将其定义为 unsigned char 以将缓冲区保存到我需要读取和处理的系统文件。我的 C 程序现在需要使用具有 byte 内置类型但定义为“unsigned int”的 C#。

这会导致在两个系统之间来回转换时出现任何问题吗?我认为无论使用什么“词”,底层存储都保持不变,对吧。所以做类似的事情

//C#
//byte[] b=new byte[2];
//b[0]=11;
//b[1]=12;
C
byte b[2];//unsigned char
b[0]=(byte)(11);
b[1]=(byte)(12);

两者无所谓。

最佳答案

自 C99 以来,C 标准定义了 int8_t。将其用于 8 位类型,或将 uint8_t 用于无符号模拟。

虽然在结构中使用这种类型时要小心,但不能保证相邻成员在内存中是连续的。不过,您可以使用数组。

关于c# - byte vs char vs int 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27794685/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com