ポインタstoreName
に値を格納していますが、後でコールバック付きのプログラムでアクセスしようとすると、storeName
は空です。私はそれがname
parent
の機能はローカルであると信じています。 parent
機能を変更することは私のコントロールではありません。 setName
ファンクションのstoreName
に値を格納する最良の方法は、storeName
を後で使用することができます。コード後で使用するためのポインタ値の保存
//*storeName is empty
で他のいくつかの時点で
void parent()
{
uint8_t name[] = "James";
setName(name);
}
static uint8_t* storeName;
void setName(uint8_t* name)
{
storeName = name;
}
...(注:上記のコードだけ手で問題を説明するための簡易版である)
storeNameはポインタではありません。 "James"は8ビット整数ではありません。このコードは非常に奇妙です。 –
申し訳ありませんがタイプミスでした。固定されました – vow
'parent'の' name'と同じです - 型に '*'がありません。 –