找回密码
 加入计匠网
搜索
热搜: BIOS ACPI CPU Windows
查看: 16293|回复: 4

求助关于EFI

[复制链接]
发表于 2008-11-12 11:07:15 | 显示全部楼层 |阅读模式
各位大大好:  V9 E* m0 [6 z, f4 e/ x
在下legacy bios没做两天又EFI了 ) D& E3 J( S4 G! Y
我想问一下下面的代码是什么意思,能从c语法分析一下吗??谢谢了!
7 [0 X$ f; L' b# |; ^5 B% |# b$ r( @$ }6 ]( I/ l
typedef- j9 V/ a+ y0 }) n( D6 m
EFI_STATUS
- o0 p' J& \& K4 o1 f+ p) U(EFIAPI *EFI_PEI_RESET_SYSTEM) (% Y) f) j! X4 G" U* Z7 v, v% x
  IN EFI_PEI_SERVICES   **PeiServices
1 J- e; W) D9 G: R* g  );# h) I/ `" S& z2 g
7 T6 M' l7 C: W% n4 `% N; i7 Z
typedef struct {* L3 N9 G: s- U  F
  EFI_PEI_RESET_SYSTEM  ResetSystem;2 A- q( N) i2 z: C
} PEI_RESET_PPI;
发表于 2008-11-12 13:18:14 | 显示全部楼层
  1. typedef
      `* @, i8 _1 o* ]/ b: ~
  2. EFI_STATUS
    " ]" n# |5 d, X7 U6 G
  3. (EFIAPI *EFI_PEI_RESET_SYSTEM) (
    2 E4 r$ s: o9 g( W( D. [
  4.   IN EFI_PEI_SERVICES   **PeiServices
    ( R/ s3 s9 q7 P8 {; z- O6 R" \8 |
  5.   );
复制代码
定义EFI_PEI_RESET_SYSTEM,: {+ _2 j8 U$ ~$ z7 G: u* l
是一个 指向返回值是EFI_STATUS,有一个参数IN EFI_PEI_SERVICES   **,使用EFIAPI调用方式的函数指针,也就是一个函数的地址
  c7 W) C5 \; X5 T
: |3 Q# g/ c2 a. o" W! ^  wEFI_PEI_RESET_SYSTEM          PeiResetSystem;定义函数PeiResetSystem,相当于:4 F$ j& I' b4 j# B8 E
EFI_STATUS EFIAPI PeiResetSystem (IN  EFI_PEI_SERVICES   **PeiServices );
回复

使用道具 举报

 楼主| 发表于 2008-11-12 14:04:00 | 显示全部楼层
感谢xtdumpling指点,学习了!
回复

使用道具 举报

发表于 2009-8-6 09:45:21 | 显示全部楼层

请问,EFI_STATUS这个有没有具体意思呢?

请问,EFI_STATUS这个有没有具体意思呢?谢谢哈,初学者~~
回复

使用道具 举报

发表于 2009-8-14 20:47:07 | 显示全部楼层
EFI_STATUS就是返回值类型啦,具体你可以到头文件里找。动动手勤思考。0 J, H/ m) O; L, ^" M( X
第一个typedef是定义的一个函数指针类型,类型名是EFI_PEI_RESET_SYSTEM,EFIAPI是一个简单的宏替换,原型是啥你最好自己去查,其实也很简单,就一个词。
6 [$ S: }5 \: g2 Z. i第二个typedef是定义了一个名为PEI_RESET_PPI的结构类型,它的唯一成员是一个(上一步定义的)函数指针。
- g5 F9 q5 y* R) k1 k0 j- N% |经过这两次定义,以后如果你将一个变量声明为PEI_RESET_PPI类型,比方说
7 \" b  c6 E* ?9 rPEI_RESET_PPI myVar;
8 |4 u+ `) y, P5 H- c6 d就意味着,myVar是一个结构型变量,它含有一个成员,这个成员是一个指向函数的指针,该函数接收一个指针数组作为其输入(其中数组中的每一项都指向一个类型为EFI_PEI_SERVICES的实例,请参考char **s作为输入),输出类型为EFI_STATUS。
" O* l; {" ?5 G& v% R  ~6 Q* J5 n' V. D: @  G
解析   EFI_PEI_SERVICES **PeiServices( y8 t1 Y& I1 R7 F
可看作 EFI_PEI_SERVICES (*PeiServices)[ ]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入计匠网

本版积分规则

Archiver|手机版|小黑屋|计匠网

GMT+8, 2026-3-5 16:01 , Processed in 0.058462 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表