Arduino 优化转换函数(字符串到字节)
Hy社区,我正在和arduino一起写一个程序。我已经写了一个函数,转换字节字符串,但它占用了这么多内存。我的问题是,是否有一个函数我可以使用,它不会占用我的arduino上太多的内存。 我把代码贴在下面Arduino 优化转换函数(字符串到字节),arduino,Arduino,Hy社区,我正在和arduino一起写一个程序。我已经写了一个函数,转换字节字符串,但它占用了这么多内存。我的问题是,是否有一个函数我可以使用,它不会占用我的arduino上太多的内存。 我把代码贴在下面 byte strConv(String str) { byte a = 0; char n = 2; char g = 3; char stringa1; char stringa2; char m; stringa1 = str.charAt(n); st
byte strConv(String str)
{
byte a = 0;
char n = 2;
char g = 3;
char stringa1;
char stringa2;
char m;
stringa1 = str.charAt(n);
stringa2 = str.charAt(g);
m = costanti (stringa1);
if (m >= '0' && m <= '9' || m >= 'A' && m <= 'F') {
a += m;
} else {
a += m;
}
a = a << 4;
m = 0;
m = costanti (stringa2);
if (m >= '0' && m <= '9' || m >= 'A' && m <= 'F') {
a += m;
} else {
a += m;
}
return a;
}
我可以在一个新的优化函数中减少这两个函数吗?据我所知,您需要这样的函数: char strConvString str { 如果str.length>2 return-1;//返回对您有意义的无效 返回static_caststrtolstr.c_str,NULL,16; } 字符串myString26,十六进制;//为您创建字符串1A 无效设置{ Serial.begin9600; } 空穴环{ Serial.printlString:\+myString+''; char val=strconvmysting;//再次给出26 Serial.printint:; Serial.printlstatic_castval; 延迟1000; } 这提示我:
String: "1a"
int: 26
String: "1a"
int: 26
...
你想让它做什么?将字符串的十六进制值转换为整数?像这样:convert0x1A=26?如果是这样,您可以看看这里:我必须转换字节中的字符串
String: "1a"
int: 26
String: "1a"
int: 26
...