テキストとバイナリの混ざったデータの扱い – プログラミング – Home

テキストとバイナリの混ざったデータの扱...
 
通知
すべてクリア

[解決済] テキストとバイナリの混ざったデータの扱い


さおり
 さおり
(@さおり)
ゲスト
結合: 23年前
投稿: 31
Topic starter  

こんにちは。表題の件でわからないことがあり教えて欲しいです。

空っぽの文字型の配列をある関数に渡すと、配列の前半がテキストで後半がバイナリに
なるようなデータを返して来ます。
配列の大きさはchar型で充分な大きさで確保しているので領域をはみ出す事は
ないのですが、バイナリ部分を文字としてみようとしても、バイナリの途中で
'\0'となるようなデータがあるとその部分で文字列が終了してしまいます。

そういうわけでテキスト部分には通常の文字列用関数を使い、
バイナリ部分には、ポインタをずらしながら読んでいけば処理は可能と
考えてはいるのですが、配列の範囲外にアクセスしない限りは
こう言った事は一般的にやってもいいことなのでしょうか?
テキスト部分が終了しているのに強引にその後ろまでアクセスしているのが
悪さするようなことがあるでしょうか?
それともchar型で定義しているのが変なのでしょうか?

質問が長くなった上に分かりづらいですが、宜しくお願いします。


引用未解決
トピックタグ
ワルツ
 ワルツ
(@ワルツ)
ゲスト
結合: 23年前
投稿: 21
 

配列のインデックスの範囲がわかっているならば、それを超えないように処理すれば
問題ないでしょう。
mem~系の関数とかは単純にバイト単位で処理するのでそれを使うとか、
ほんとに、1バイト単位でみていくとか。


返信引用
Jun
 Jun
(@Jun)
ゲスト
結合: 23年前
投稿: 12
 

ちなみに、読むだけなら範囲外でも大丈夫だと思うよ。


返信引用
さおり
 さおり
(@さおり)
ゲスト
結合: 23年前
投稿: 31
Topic starter  

テキスト部分はともかく、バイナリ部分は
mem~かポインタずらしで見ていこうと思います。
バイナリデータは扱いが面倒ですね。
ワルツさん、Junさん、返答ありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

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