Eclipse CDT - 将'char'视为无符号
Eclipse CDT - Treat 'char' as unsigned
我有一个旧编译器的遗留项目,我们传递一个编译器标志(类似于-DCHAR_AS_UNSIGNED)来处理'char'类型为unsigned。编译器是一个非常老的专有编译器,我们在命令行中单独运行,而不是通过Eclipse运行。我们有很多旧代码使用unsigned char*而不是char*来表示字符串。默认情况下,Eclipse按照它应该的方式处理这个问题,并警告将unsigned char*传递给期望char*的例程是不正确的。是否有一种方法可以让Eclipse忽略这些,并像我们的编译器那样对待它们?
我所能实现的最接近的是向项目添加一个全局定义的符号(项目->属性->路径和符号->符号),它将char
定义为unsigned char
。
在大多数情况下它是有效的,因为我所关心的大多数遗留代码都没有使用unsigned char(这会破坏这个解决方案)。它甚至似乎与我们对特定宽度的整型的类型(例如,U8
被定义为typedef unsigned char U8
)表现良好。此解决方案不适用于文件中使用unsigned char
的地方,因为它将被扩展为unsigned unsigned char
。
相关文章:
- 将无符号char*转换为std::istream*C++
- 通过无符号 char 别名进行对象访问,加载和存储时会发生什么?
- 将数据从 vector<unsigned char> 传输到无符号 char[]
- 将 C++ 转换为 Python 通过引用返回无符号 char*
- Vizualize无符号char *数组作为位图
- C/C++:将 char[] 转换为 int 失败,无符号 char[] 到 int 有效,为什么
- 将无符号char*缓冲区分配给字符串
- 在编译模板方面,char、有符号char或无符号char参数类型的函数重载
- 如何正确地将std::字符串转换为无符号char[]数组*.我觉得我做错了,有人给我指明了正确的方向
- 将char转换为无符号char
- 如何在python中将包含十六进制值的无符号char*数组写入文件
- 解析指向位操作数 C++ 的无符号 char 指针
- 将无符号 char[] 解析为 std::string
- 无符号char*数据作为c++或c中函数的返回类型
- 从C++字符串转换为无符号char*并返回
- 将无符号整数转换为无符号char*
- 无符号char类型变量I/O失败
- 如何在std::string中插入无符号char*变量
- 将C字符串转换为无符号char指针
- 使用memcpy()函数将字节从无符号char数组放入std::string