📜  Arduino Sring 到 const char - C++ (1)

📅  最后修改于: 2023-12-03 15:29:27.585000             🧑  作者: Mango

将Arduino的String转换为const char [ ]格式

当在Arduino编程中使用String对象时,有时会需要将其转换为C字符串(const char [ ])格式。这在涉及到串口通讯和文件I/O时很常见。在本文中,我们将介绍如何以两种不同的方式实现这种转换。

方法一:使用toCharArray()函数

toCharArray()是String对象的一个函数,它将字符串存储在一个字符数组中。以下代码演示了如何使用toCharArray()函数将String对象转换为const char [ ]数组:

String myString = "Hello, world!";
char myChar[50];
myString.toCharArray(myChar, 50);

该代码首先创建一个名为myString的String对象,其中包含字符串“Hello, world!”。接下来,它创建了一个大小为50的char数组myChar,并将myString存储在该数组中。注意,toCharArray()函数需要两个参数:第一个是指向字符数组的指针,第二个是字符数组的大小。

方法二:使用c_str()函数

c_str()是另一个String对象的函数,它返回一个const char [ ]类型的指针。以下代码演示了如何使用c_str()函数将String对象转换为const char [ ]数组:

String myString = "Hello, world!";
const char *myConstChar = myString.c_str();

该代码创建了一个名为myString的String对象,其中包含字符串“Hello, world!”。接下来,它使用c_str()函数将myString转换为const char [ ]类型的指针,并将其保存在myConstChar中。

总结

在本文中,我们介绍了两种将Arduino的String对象转换为const char [ ]数组的方法。使用toCharArray()函数将String对象存储在字符数组中,而使用c_str()函数则返回一个指向const char [ ]类型的指针。理解如何执行这些转换将有助于您在Arduino编程中更有效地处理和传输字符串数据。