c++ - 如何将 int 转换为 char(不是 const char)以便与 putChar() 一起使用;

标签 c++ qt serial-port type-conversion

我正在编写一个 QT 控制台应用程序,以使用 QSerialport 库从 FTDI 电缆中写入。 (FTDI 电缆连接到逻辑分析仪,因此我可以调试输出)

我需要将 int x = 255; 传递到行 myserial->putChar();

我尝试使用以下方法将 int 转换为 char:

int x = 255; std::string s = std::to_string(x); char const *myChar = s.c_str(); myserial->putChar(myChar);

并收到错误:

无法使用“const char*”类型的左值初始化“char”类型的参数

然而,在这个以字符开头的测试中,一切都完美无缺:

char myChar = 255; myserial->putChar(myChar);

在逻辑分析仪上给出正确的结果 0xFF

有人可以帮忙吗?谢谢!

最佳答案

就去做吧

int x = 255;
mySerial->putChar(x);

编译器会为你转换参数。除非你有一些你没有提到的额外要求,否则你可以让它更简单:

mySerial->putChar(255);

关于c++ - 如何将 int 转换为 char(不是 const char)以便与 putChar() 一起使用;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34643486/

相关文章:

c++ - 和弦声音播放

java - Java读取串口

c++ - SetWindowsHookEx DLL卸载

c++ - 3D 网格中的 block 附件

qt - qml 中 GUI 屏幕转换的工作原理

qt - 小部件未在基本 Qt 应用程序(QMainWindow)中显示

c++ - qt 5.7 + Xcode 8.1 + os x El Capitan - 无法解析 'macosx' 的 SDK 路径

linux - Linux 上的串行通信连接

c - 使用C语言读取串口(USB-RS232)的问题

c++ - *static* 关键字在成员方法声明中的位置