我希望以下代码从价格中删除前导零(0.00应该减少为.00)

QString price1 = "0.00";
if( price1.at( 0 ) == "0" ) price1.remove( 0 );

这给了我以下错误:“错误:从'const char [2]'到'QChar'的转换是模棱两可的”

最佳答案

主要问题是Qt将"0"视为以null终止的ASCII字符串,因此有关const char[2]的编译器消息。

另外,QString::remove()接受两个参数。因此,您的代码应为:

if( price1.at( 0 ) == '0' ) price1.remove( 0, 1 );

这将在我的系统(Qt 4.7.3,VS2005)上构建并运行。

关于c++ - 如何检查QString的第一个字符?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8404872/

10-09 12:33