のは、私は構造体と、次のような機能を持っているとしましょう:ヘッダファイル内(Cで)構造体の配列を逆参照
構造体:
typedef struct {
uint8_t length;
uint8_t data[8];
} simple_vector;
機能:どのように
simple_vector* SD_cmd(uint8_t cmd, uint32_t arg, uint8_t crc, uint8_t read_cnt){
simple_vector vector;
//stuff happens and the simple_vector is manipulated
return &vector;
}
- >演算子を使用して配列の非ゼロ要素にアクセスする方法はありますか?
simple_vector *response;
response = SD_cmd(8, 0x000001AA, 0x87, 5);
uint8_t value = response->data[3];
上記のスニペットの最後の行が正しい値を返さない:
はの関数は、この構造体へのポインタを返すとしましょう。私は(mcu上で)デバッグし、関数内のデータ[3]が関数の外で逆参照するときのものと同じでないことを確認しました。何かご意見は?
構文は正しいです。 「働かない」とはどういう意味ですか? –
コンパイルされないスニペットの最初の行です。最後の行は問題ありません。決定的な回答を得るには、[最小完全な検証可能な例](http://stackoverflow.com/help/mcve)を投稿する必要があります。 – user3386109
@ user3386109:残りのコードを追加する必要があります。最初の行は有効な構文はそのままです。 [ask]を見て、[mcve]を提供してください! – Olaf