3 string int arduino type-conversion
我想将转换String到int,所有我能找到的是,您必须将字符串转换为字符数组,然后施放此数组的int,但我的代码产生奇怪的价值观和我想不通的问题是什么.
void ledDimm(String command)
{
// Get the Value xx from string LEDDimm=xx
String substring = command.substring(8, command.length());
Serial.println("SubString:");
Serial.println(substring);
Serial.println("SubString Length:");
Serial.println(substring.length());
// Create a Char Array to Store the Substring for conversion
char valueArray[substring.length() + 1];
Serial.println("sizeof ValueArray");
Serial.println(sizeof(valueArray));
// Copy the substring into the array
substring.toCharArray(valueArray, sizeof(valueArray));
Serial.println("valueArray:");
Serial.println(valueArray);
// Convert char array to an int value
int value = int(valueArray);
Serial.println("Integer Value:");
Serial.println(value);
// Write the Value to the LEDPin
analogWrite(LEDPin, value);
}
Run Code Online (Sandbox Code Playgroud)
串行输出如下所示:
Received packet of size 11
From 192.168.1.4, port 58615
Contents:
LEDDimm=100
SubString:
100
SubString Length:
3
sizeof ValueArray
4
valueArray:
100
Integer Value:
2225
Run Code Online (Sandbox Code Playgroud)
我希望得到一个值为100的int,但实际的int是2225 ?! 我在这做错了什么?
| 归档时间: |
|
| 查看次数: |
21166 次 |
| 最近记录: |