gpt4 book ai didi

c - 我自己声明wchar_t

转载 作者:行者123 更新时间:2023-11-30 19:42:12 30 4
gpt4 key购买 nike

请告诉我,在哪里可以找到 wchar_t 声明。我用的是linux,我认为是32位的。我需要声明这种类型,因为我无法使用标准库(它在我的 Bootstrap 中使用)。文件/usr/include/wchar.h 和/usr/include/linux/stddef.h不包含它的声明。还有 mbstate_t 呢?

最佳答案

如果您不使用标准库,则不需要 wchar_t。或者至少标准库的 wchar_t 想法对您来说并不重要。怎么可能呢?如果您想要宽字符处理,那么您需要编写它所需的任何函数,并且您可以自由定义和使用最适合/方便于此目的的任何类型。

但是,如果您打算进行系统调用,您可能需要内核 header 。我无法想象你的 Bootstrap 如何避免这种情况,或者为什么它想要这样做。为此目的所需的那些类型将在内核 header 中定义。您也不需要内核头文件:由于程序的目的是加载和启动内核,因此它不能依赖对内核的系统调用来完成其工作。

底线是,由于您必须提供硬件/固件无法直接提供的所有内容(不提供 C 接口(interface)),您自己的代码之外的任何 C 定义都与您无关。特别是,wchar_t 不是任何系统的特征;相反,它是特定 C 库的特性。对于同一系统(包括您的系统),不同的 C 库可以自由地对其进行不同的定义。如果您选择实现自己的宽字符函数,那么选择从其他 C 库中提取的 wchar_t 定义没有任何优势。

关于c - 我自己声明wchar_t,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32610716/

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