2020年05月31日

C++ で四苦八苦してくるしーでたのしーーーー

ある出版社サイトからDLした例題に次のようなコードがありまして

#include <iostream>
#include <fstream>
using namespace std;

int main( void )
{
char *file = "stl324.cpp";  // Error 
    fstream s( file, ios::in );

if ( s.fail() ) {

      略・・・・
Errorが出た。g++ は8.1.0 である。
warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

おおお、今 気づいた。Errorではなく警告でした(笑)
動いたし。Warningだったらいいや・・・・・

で、上のは const char  *file =   とすると警告は出なくなる。
理由は・・・・いいや、char file[] =  てせも警告でない。



なんで囲みが出た?  キーボードのどっかとどっかを叩いたらこんなんが出たのだが、戻す方法がわからんので放置!!    で、上の例題だが、c++なんだから string使えよって言いたいわけであったの。

posted by toinohni at 10:17| 東京 ☀| Comment(0) | ソフト系雑学 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください