char型のクリア – プログラミング – Home

通知
すべてクリア

[解決済] char型のクリア


マル
 マル
(@マル)
ゲスト
結合: 23年前
投稿: 45
Topic starter  

はじめまして、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));


引用未解決
トピックタグ
けん
 けん
(@けん)
ゲスト
結合: 25年前
投稿: 40
 

どれも同じ結果ですが、wBufの用途によって使い分ければよいかと思います。

wBufに文字列を記憶するのであれば、
memset( wBuf, '\0', sizeof wBuf ) ;

10進数のバイト配列ならば
memset( wBuf, 0, sizeof wBuf ) ;

16進数のバイト配列ならば
memset( wBuf, 0x00, sizeof wBuf ) ;

でいかがでしょうか?


返信引用
T・T
 T・T
(@T・T)
ゲスト
結合: 21年前
投稿: 5
 

初期化が目的であれば、宣言時に定義する方法もあります。

//全てを0x00で埋める
char wBuf[256]={0};000000....00

//全てを'1'で埋める 111111....11
char wBuf[256]={'1'};

//三文字目まで定義、残りは0で埋める。1230000000....000
char wBuf[256]={'1','2','3'};


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 22年前
投稿: 600
 

> //全てを'1'で埋める 111111....11
> char wBuf[256]={'1'};

これは無理。3番目のと矛盾するし。


返信引用
T・T
 T・T
(@T・T)
ゲスト
結合: 21年前
投稿: 5
 

勘違いでした。
申し訳ありません・・・


返信引用
マル
 マル
(@マル)
ゲスト
結合: 23年前
投稿: 45
Topic starter  

ご返答有難う御座いました。

参考とさして頂きます。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました