- 1
- 0
- 约3.16万字
- 约 14页
- 2016-08-23 发布于贵州
- 举报
应聘硬件工程师或研类工作资料集锦_硬件工程师_电子工程师_嵌入式工程师_单片机_笔试题目_面试题目
用一个宏定义FIND求一个结构体CTYPE里某个变量CNUM相对了CTYPE的编移量。如:stuct student { int a; char b[20]; double ccc; }则:FIND(student,a); //等于0FIND(student,b);//等于4
二楼的可以。#define FIND(type,member) (int)(( ((type*)0)-member) )struct student{ int a; char b[20]; double ccc;};int main(int argc,char* argv[]){ int i=FIND(student,a); //等于0 i=FIND(student,b);//等于4 return 0;}调试结果是对的。
题目出得很好:其实就是考下这个宏 offsetof ,定义在文件 stddef.h 中.#define offsetof(TYPE, MEMBER) ((size_t) ((TYPE *)0)-MEMBER)TYPE是某struct的类型 0是一个假想TYPE类型struct,MEMBER是该struct中的一个成员. 由于该struct的基地址为0, M
原创力文档

文档评论(0)