最近,我遇到一个问题,询问这两个声明之间的区别。
char far *far *scr;
char far far **scr;
现在,我知道在第一个声明中,
char far *far *scr;
src是一个远指针,它包含指向char的远指针的地址 即 src 是一个指向 char 的远指针的远指针。
但是,我似乎不明白第二个声明的含义。
这是否意味着 src 是一个指针,其中包含指向 char 的远指针的地址?
如果是这样,那么第二个声明是否与
char 远 ** src
??
最佳答案
我可能会将这些声明读作
char far *far *scr;
// scr is a far pointer to a far pointer to char
// char (far *)(far *)scr;
char far far **scr;
// scr is a pointer to a far far pointer to char
// char (far far *)*scr;
关于复杂的指针声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24757647/