1

私は NIOS II を使用しています - Eclipse ここに私のコードのサンプルがあります 私は基本的に関数を呼び出そうとしています

struct DevDesc {

u32* mmio;

}

struct DevDesc dev_desc;

struct MemDesc mem_desc_g;//this structure is defined in another file

struct SysDesc sys_desc_g = {

.dd = &dev_desc,

.md = &mem_desc_g,

};

u32 power_mode_sleep (struct SysDesc *sd)

{

void * dev_addr = sd->dd->mmio;

//code
//code
//code

return 0;

}

そして数行後、私はそれを呼び出そうとします

int main()

{

power_mode_sleep((u32*)dev_addr);

}

ビルドしようとすると、エラー 'dev_addr' undeclared (この関数で最初に使用) がスローされ、次の行を指します

power_mode_sleep((u32*)dev_addr);

必要だと思うものだけを入れて、コードを簡潔にしようとしました。詳細をご覧になりたい方がいらっしゃいましたら、喜んで提供させていただきます。

4

1 に答える 1

1

void * dev_addr = sd->dd->mmio;関数のスコープに制限されているためpower_mode_sleep (struct SysDesc *sd)、エラーが発生します。

(u32*)dev_addrまた、パラメータとして に渡していますpower_mode_sleep。一方、型のパラメーターが必要ですstruct SysDesc *

于 2013-06-14T01:19:03.117 に答える