No.2
- 回答日時:
こんにちは。
C言語では、Pack/Unpackに対応した進数変換関数はありません。
ゾーンの場合であれば、EBCDICコードかJISコード化によって変わってきます。
ただ、ゾーンもパックも後ろのバイトに符号(+/-)がつきますので
規則性はありますので、自作するしかないのでは。
以下、私が作るとしたらと仮定して
1.必要なものをクラス化する。(Cであれば適せん修正)
元の値の変数、ゾーン値変数、パック値変数、等の変数
Base2Zone(...)関数、Base2Pack(...)、
Zone2Pack(...)関数、Pack2Zone(...)、等の関数
関数の中は、ビット演算のあらしになりますが、それほど難しいものでは
ないと思います。
尚、大きな値を使用するようであればバイト数にも注意してください。
No.3ベストアンサー
- 回答日時:
どのレベルの質問かわかりませんが、4bit単位のアクセスが出来ると簡単に移行できるので、
union zone_t{
char a;
struct hb_t {
char l:4;
char h:4;
} hb;
} a[100]; /* this is for zone */
struct pack_t {
char b:4;
} b[50]; /* this is for pack */
みたいに4bit単位に操作できるように宣言してあげると、関数の中ではbit操作しなくてもいいから楽に処理できます。
一例として、zone -> pack
i = 0;
while (a[i].hb.h == 0x3) {
b[i].b = a[i].hb.l;
i++;
};
b[i].b = a[i].hb.h;
でしょうか。
ちゃんと動作は確認していないので、ちょっと自信ないですが。
No.4
- 回答日時:
下のものですが、もしかしたら、
struct pack_t {
char b:4;
} b[50]; /* this is for pack */
だと、50byte使ってしまったような、、、
(仕様を忘れてしまいました。)
この場合は、やはりzoneと同じようにh,lみたいに2つ定義する必要があります。
では。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
あるあるbotに投稿したけど採用されなかったあるある募集
あるあるbotに投稿したけど採用されなかったあるあるをこちらに投稿してください
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
数字文字列をパック10進数に変換するにはどうしたらいいのでしょうか?
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Integer変数をカラにしたいので...
-
C++ 構造体の一括初期化 {0}
-
VBAのプログラムで、DIAG = 1# ...
-
「#undef」と「#define」の使い...
-
int型とchar型について
-
VBAの変数のデータ型を変更する...
-
BOOL へのUINT の代入
-
構造体(問題→回答)
-
日付チェック関数について
-
値が代入されてない時
-
VBAで符号無し整数
-
構造体の使い方
-
値(参照)渡しでの引数(構造...
-
変数の初期化について
-
構造体のデータを丸ごとコピー...
-
構造体のポインタにNULLが入らない
-
C言語 配列の長さの上限
-
関数から配列を返すには?
-
配列の要素数に変数を入れたい...
-
System.IO.Directory.GetFiles...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAのプログラムで、DIAG = 1# ...
-
Integer変数をカラにしたいので...
-
C++ 構造体の一括初期化 {0}
-
「#undef」と「#define」の使い...
-
構造体のデータを丸ごとコピー...
-
C言語 構造体の中に共用体を定...
-
VBAにてcolorindexを変数に格納...
-
値が代入されてない時
-
typedefをプログラム中で解除す...
-
VBAの変数のデータ型を変更する...
-
long型のデータをバイト型の配...
-
異なる構造体のデータのコピー
-
charとucharの違い
-
整数から16進数への変換 現在c...
-
構造体のポインタにNULLが入らない
-
日付チェック関数について
-
VBAで符号無し整数
-
ユーザー定義型変数の一括初期化
-
値が変わるのはどうしてでしょ...
-
命名規則 VB 構造体
おすすめ情報