小编Scr*_*est的帖子

使用printf和cout获得不同的输出 - C++

我有一个我想要打印的字符串.当我使用cout它时,它输出完美但是使用printf它会损坏它.

这是代码:

int main ( int argc, char *argv[] )
{
    // Check to make sure there is a single argument
    if ( argc != 2 )
    {
        cout<<"usage: "<< argv[0] <<" <filename>\n";
        return 1;
    }

    // Grab the filename and remove the extension
    std::string filename(argv[1]);
    int lastindex = filename.find_last_of("."); 
    std::string rawname = filename.substr(0, lastindex);

    cout << "rawname:" << rawname << endl;
    printf("rawname: %s", rawname);

}
Run Code Online (Sandbox Code Playgroud)

cout给我"rawname:文件"
printf给了我"rawname:",然后一串字符的波浪

c++ string printf

17
推荐指数
3
解决办法
1万
查看次数

标签 统计

c++ ×1

printf ×1

string ×1