Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 修改基本数据类型_C_Arduino_Primitive - Fatal编程技术网

C 修改基本数据类型

C 修改基本数据类型,c,arduino,primitive,C,Arduino,Primitive,您可以更改Arduino源代码中基本数据类型的行为吗。我假定这些都是由编译器解释的。可以将char更改为始终作为无符号而不是有符号的吗 在C'char'中可以是有符号的也可以是无符号的。它是有符号的还是无符号的取决于编译器和/或编译器设置。在您的情况下,在调用编译器时只需提供-funsigned char。在Arduino中,“signed char”将被签名,“unsigned char”和“char”都将被取消签名。在Arduino中,您将需要IDE版本1.5和更高版本 这将允许您访问pla

您可以更改Arduino源代码中基本数据类型的行为吗。我假定这些都是由编译器解释的。可以将char更改为始终作为无符号而不是有符号的吗

在C'char'中可以是有符号的也可以是无符号的。它是有符号的还是无符号的取决于编译器和/或编译器设置。在您的情况下,在调用编译器时只需提供-funsigned char。在Arduino中,“signed char”将被签名,“unsigned char”和“char”都将被取消签名。在Arduino中,您将需要IDE版本1.5和更高版本

这将允许您访问platform.txt,您可以在其中设置Meixner指出的命令行参数

在1.5.7中,我在这里找到了它:
{ArduinoInstall}\arduino-1.5.7\hardware\arduino\avr\platform.txt


有两个条目:
compiler.c.flags
&
compiler.cpp.flags
您可以在Arduino中添加开关
-funsigned char
,只需在定义前面添加unsigned,所有原语都可以有符号和无符号
无符号整数示例;

无符号字符示例

gcc有编译器选项-fsigned char和-funsigned char,它们在全局范围内切换要签名或未签名的字符。如果您不使用gcc,那么您的编译器可能也有类似的选项。那么我该如何实现呢?在C中,“char”可以是有符号的,也可以是无符号的。它是有符号的还是无符号的取决于编译器和/或编译器设置。在您的情况下,在调用编译器时只需提供-funsigned char。这样做“signed char”将被签名,“unsigned char”和“char”都将被签名。感谢它起了作用:)我的建议是不要这样做。大多数读C的人都希望
int
char
被签名。用编译器指令切换这种行为是非常模糊的。读取代码时,编译器指令不可见。只需显式选择无符号类型(在代码中)。