您的位置:首页 > 产品设计 > UI/UE

Arduino中数据类型转换 int转换为char 亲测好使,itoa()函数

2016-03-16 15:48 387 查看
由于博主最近在做一个项目,需要采集不同传感器的数据,包括float型的HCHO,以及int型的PM2.5数据。但是最终向服务器上传的数据都得转换为char型才能发送,这是借鉴了一个github上面的实例实现了在Arduino上部署socket使之与服务器进行交互。

github实例如下:

https://github.com/washo4evr/Socket.io-v1.x-Library
在本项目中多次使用了数据类型转换,前文提到了float和double类型转换为char,如下:http://blog.csdn.net/qq_25827845/article/details/50717522

这里分享一种int -char的方法:

代码如下:

void setup() {
// put your setup code here, to run once:

Serial.begin(9600);

int number = 12;
char string[25];

itoa(number, string, 10);
Serial.println(string);

char s[] = "ababababbaabababab////";
strcat(s, string);
Serial.println(s);
}

void loop() {
// put your main code here, to run repeatedly:

}
这是Arduino IDE开发环境中的代码,输入结果将是:
12
ababababbaabababab////12


实现了类型转换,主要使用 stdlib.h 中的 itoa() 函数来实现。在C语言编译环境下,需要导入#include <stdlib.h>库,但是Arduino IDE中不需要进行导入库。


函数itoa()原型

char *itoa(int value, char *string, int radix);

原型说明:
value欲转换的数据。string:目标字符串的地址。radix:转换后的进制数,可以是10进制、16进制等。

功能:把一个整数转换为字符串。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: