あなたの変数は以下のように宣言された場合:
:
long Data32;
long DestinationAddress;
long *temp;
あなたは
あなたが使用すること
temp = DestinationAddress;
を使用することはできません
temp = &DestinationAddress;
使用後
、:
*temp = Data32;
はData32
にDestinationAddress
の値を設定するための有効な方法です。
ただし、DestinationAddress
という名前とそれを宣言するために使用された型は、long
と一致していないようです。あなたはDestinationAddress
がlong
のアドレスを格納する場合、それはとして宣言する必要があります
long* DestinationAddress;
あなたはアドレスを格納する代わりにlong*
の整数型を使用したい場合は、使用するタイプがintptr_t
or uintptr_t
あります。
uintptr_t Data32;
uintptr_t DestinationAddress;
uintptr_t* temp;
Data32 = 0x00112233;
DestinationAddress = 0x00280000;
temp = &DestinationAddress;
*temp = Data32;
更新、OPのコメント
に応じて、あなたが使用する必要があります。
long Data32;
uintptr_t DestinationAddress;
long* temp;
Data32 = 0x00112233;
DestinationAddress = 0x00280000;
temp = (long*)DestinationAddress;
*temp = Data32;
使用コードブロックと適切な形式。 – tambre
私はあなたの例を理解しているのか分かりませんか? – Borgleader
「これでいいですか?」あなたは私に言います、あなたはそれを試しましたか? – tambre