struct{
char a;
char b;
} test01_t
struct{
char c;
char d[3];
} test02_t
struct{
test01_t test01;
test02_t test02;
}
書き込み先の領域の先頭アドレス
char* Addr;
データ構造が以下になっている状態で、
struct{
test01_t test01;
test02_t test02;
}
test01_t test01の領域には書き込まず
test02_t test02の情報だけ
領域にmemcpyまたはその他の方法で書き込みむにはどうしたらよいでしょうか?
よろしくお願い致します。
No.2ベストアンサー
- 回答日時:
…………下記の間違い…ですよね?
struct test01_t {
char a;
char b;
};
struct test02_t {
char c;
char d[3];
};
>struct{
>test01_t test01;
>test02_t test02;
>}
にタグ名などがないのが難しいところでしょうかねぇ……。
タグ名などついていれば、Addrをキャストするなり方法があるかと思いますが。
Addrをstruct test01_t *にキャストして+1する…なんて無茶もなくはないでしょうが、
正しく動作してくれる保証はありませんしね。
# 構造体アライメントでパディングが詰められている可能性もありますし。
というワケで私ならば、「タグ名つけて正しくアクセスできるようにする」ってところでしょうか。
struct test03_t {
test01_t test01;
test02_t test02;
};
で、
((struct test03_t *)(Addr))->test02
かな。
No.1
- 回答日時:
typedef struct{/*typedef追加*/
char a;
char b;
} test01_t;/*;追加*/
typedef struct{/*typedef追加*/
char c;
char d[3];
} test02_t;/*;追加*/
struct{
test01_t test01;
test02_t test02;
}test;/*変数名と;追加*/
char* Addr;
の場合は「memcpy(&test.test02,Addr,sizeof(test.test02));」です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ドライブ・ストレージ HDDのチェック方法 6 2022/05/04 09:49
- C言語・C++・C# 質問です 下記のコードを分かりやすく解説お願いします 初心者です #include ‹stdio.h 3 2022/05/26 22:03
- Excel(エクセル) Excelの置換が上手くいかない Microsoft® Excel® 2019 MSO (バージョン 5 2022/08/17 22:26
- その他(プログラミング・Web制作) VScodeでpythonプログラムの関数を実行したい 2 2022/07/13 19:24
- その他(学校・勉強) Japanese schools tests 1 2022/08/19 14:41
- 中学校受験 Japanese schools 1 2022/08/22 15:53
- PHP PHP一覧表示した項目にリンクをはりたい 1 2023/07/12 17:08
- Java java final 1 2022/06/10 22:49
- PHP $_SESSIONについて教えて下さい。 2 2023/03/02 09:18
- Excel(エクセル) VBA ワークシート指定の1行目を選択をしたい 2 2022/08/20 18:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Linux Cプログラミングを学ぶた...
-
右ビットシフト
-
プログラミングについて。 1つ...
-
プログラミングの授業の課題です
-
Notepad++の関数リスト表示の変...
-
S-JIS → JIS コード変換するには
-
C言語をコンパイルするとコンピ...
-
こんなことてしますか??
-
[C言語]fputsとfprintfの違い
-
これなにがちがうんですか??
-
win10で、正確な待ち時間の作り方
-
システムエンジニアの適正について
-
ArduinoでMouse関数を使用して...
-
gccを行ってもexeファイルが生...
-
C言語 バッファについて。
-
整数1〜99を入力させ、それを英...
-
C言語初心者 ポインタについて...
-
あなたは、Excelはどうやって学...
-
LinuxカーネルのCFSで用いられ...
-
卒業研究でよく分からないとこ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語 配列と関数の練習問題
-
システムエンジニアの適正について
-
[C言語]fputsとfprintfの違い
-
C言語をコンパイルするとコンピ...
-
mallocについて
-
どちのほうがすきですか?
-
ArduinoのジャイロモジュールMP...
-
大量のデータを読み込んで表示...
-
gccを行ってもexeファイルが生...
-
VisualStudio2022でC言語プログ...
-
C言語 列挙型(enum型)変数について
-
こんなことてしますか??
-
C言語の関数と配列に関する質問
-
Linuxでの開発環境構築や設定の...
-
質問失礼します。 プログラム言...
-
MACで動く実行ファイルをWindow...
-
WindowsのCapsLock(キャップス...
-
これなにがちがうんですか??
-
卒業研究でよく分からないとこ...
-
gcc13.2のバグ?
おすすめ情報