2

この関数を使用してメモ帳ファイルから読み取り、データを入力してchar str[255]いますが、関数を実行した後strもまだ空です。

char str[255];

char* data_pull()
{
    std::ifstream in("C:/myfile.txt");
    if(!in){
        printf("\nCannot open the file");
       exit (1);
    }

    while(in){
        in.getline(str, 255);  
       printf(str);
    }

    in.close();
    return str;
}
4

1 に答える 1

4

in.getline(str, 255);入力ファイルのすべての行を上書きし続けるとstr、言い換えると、すべての行がに保存されている前の行を上書きしますstr

ファイルが空の行で終わっている場合はstr、ループの最後に空の文字列を格納します。

于 2012-11-26T08:53:00.787 に答える