はじめまして、C,VC初心者で回りに聞く人が居ないので
ご指導願いたいのですが・・・
MF-CからVC++へのコンバートを行っているのですが
char型のクリアで以下の3パターンがあり使い分けがわかりません
何か違いが有るのでしょうか、またVC++としてのべすとはどれなのでしょうか?
ご指導をお願いします。
char wBuf[256];
1.memset(wBuf,0,sizeof(wBuf));
2.memset(wBuf,'\x00',sizeof(wBuf));
3.memset(wBuf,0X00,sizeof(wBuf));
どれも同じ結果ですが、wBufの用途によって使い分ければよいかと思います。
wBufに文字列を記憶するのであれば、
memset( wBuf, '\0', sizeof wBuf ) ;
10進数のバイト配列ならば
memset( wBuf, 0, sizeof wBuf ) ;
16進数のバイト配列ならば
memset( wBuf, 0x00, sizeof wBuf ) ;
でいかがでしょうか?
初期化が目的であれば、宣言時に定義する方法もあります。
//全てを0x00で埋める
char wBuf[256]={0};000000....00
//全てを'1'で埋める 111111....11
char wBuf[256]={'1'};
//三文字目まで定義、残りは0で埋める。1230000000....000
char wBuf[256]={'1','2','3'};
> //全てを'1'で埋める 111111....11
> char wBuf[256]={'1'};
これは無理。3番目のと矛盾するし。
勘違いでした。
申し訳ありません・・・
ご返答有難う御座いました。
参考とさして頂きます。