假设int的大小是4。
null
#include <stdio.h> void f( char **); int main() { char *argv[] = { "ab" , "cd" , "ef" , "gh" , "ij" , "kl" }; f(argv); return 0; } void f( char **p) { char *t; t = (p += sizeof ( int ))[-1]; printf ( "%s" , t); } |
(A) ab (B) 光盘 (C) ef (D) 生长激素 答复: (D) 说明: 表达式(p+=sizeof(int))[-1]可以写成(p+=4)[-1],它可以写成(p=p+4)[-],返回地址p+3,即argv[]中第四个元素的地址。 这个问题的小测验
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END