请问一下,result获取到执行Linux命令的结果,我想拿来与‘1’比较怎么进行比较呢?
QProcess proess;
process.start("cat /sys/class/gpio/value");
process.waitForFinished();
QString result = process.readAllStandardOutput();
if(result == 1)
{
}
请问一下,result获取到执行Linux命令的结果,我想拿来与‘1’比较怎么进行比较呢?
QProcess proess;
process.start("cat /sys/class/gpio/value");
process.waitForFinished();
QString result = process.readAllStandardOutput();
if(result == 1)
{
}
该回答引用GPTᴼᴾᴱᴺᴬᴵ
在进行比较时,需要注意数据类型的一致性。在这个例子中,result是QString类型,而1是整型数字类型。
你可以将result转换成整型数字类型,然后再进行比较。例如:
QProcess process;
process.start("cat /sys/class/gpio/value");
process.waitForFinished();
QString result = process.readAllStandardOutput().trimmed(); // 去掉两端的空白字符
int resultInt = result.toInt(); // 将result转换成整型数字
if (resultInt == 1) {
// do something
}
注意,在将result转换成整型数字时,需要先使用trimmed()函数去掉两端的空白字符,因为在执行Linux命令时,可能会有额外的换行符或空格等字符。