Part1: 选择题

  1. 以下哪种声明是不允许的? ( ) A. uint8 u8Counter; B. int8 i8Index; C. typedef uint8 MOD_tu8ExampleType; D. unsigned int u32PulseCounter;

答案:D

  1. 根据每个模块的描述,哪个是正确的? ( ) A.C1.H 包含模块的公共接口 B.CE.H 包含公共配置所需的所有信息 C.CT.H 包含其他模块可以使用的所有 API 类型 D.CA.H 包含容器和函数调用表的原型和实现,可以由用户进行配置 E:CI.H 配置模块本身并将其适应于外部模块

答案:A

  1. 以下哪种是模块前缀的合理定义? ( ) A. typedef struct EEPX_test{ uint8 EEPX_ui8Data; uint32 ui32Data;
    } B. enum test{ EEPX_ui8Data=0; EEPX_ui32Data; } C. union test { uint8 EEPX_ui8Data; uint32 EEPX_ui32Data;
    } D. 以上都是

答案:D

  1. 在文件局部区域中定义标识符为u8Byte。 ( ) B.u8Byte C.SWOD_Byte A.SWOD_u8Byte D.SWOD__u8Byte

答案:A

  1. 根据API文件“导出接口”的格式,以默认值命名,哪种定义是正确的? ( ) A.SWMOD1C1.H B.SWMOD1C.H C.SWMODC1.H D.SWMODC.H

答案:C

  1. 以下哪种注释不符合C编程规则。 ( ) A. /* Number of pulses equal to 10meter*/ B. /*Velocity CAN input Error /0x1FFF/ / C. / * PT1 damping fall factor */ D. 以上都不是

答案:B

  1. 模块SWMOD的哪些文件不在inc中? ( ) A. #include SWMODXCA.H B. #include SWMODXCE.H C. #include SWMODXCn.C D. #include SWMODXC1.H

答案:C

  1. 以下使用不同数据类型定义函数局部变量的声明哪个是不正确的? ( ) A.uint32 SMOD__ui32Result B.bit8 SMOD__bi8Result C.typedef uint8 SMOD_tu8Example D.enum SMOD__enResult

答案:B

  1. 以下哪种名称定义是正确的? ( ) A.Getvalue B.GetValue
    C.Get_Value
    D.GetValue11

答案:B

  1. 以下关于访问结构和数组元素的说法是正确的? ( ) A. 不允许访问数组越界 B. 数组元素必须始终由数组[index]寻址。 C. 不要为未知大小的数组使用typedef D. “结构体”或“联合体”中的成员数不能超过127个

答案:B

Part2: 是或否题

  1. switch (bState) { case 1 : func1(); break; case 2 : func2(); break; default : func4(); break; case 3 : func3(); break;
    } 这个switch语句是正确的吗? ( )

答案:否

Part3: 真或假题

  1. 下面的代码定义了一个名为CAN_tstBasicCan的结构体,包括后缀变量名为uint8 Data和uint32 Data。 /*code typedef struct { uint8 bi8LowFuelWrnData_Flg; BOOL boWarningon_flg; BOOL TNC_boDiagMode_Stat;
    } CAN_tstBasicCan; 这是真的还是假的? ( )

答案:假的

  1. 数据类型的分配标识符通常由'typedef'定义为't',因此,typedef enum SMOD__enResult的定义是真还是假? ( )

答案:假的

  1. 结构体可以方便配置,定义清晰的职责并减少编译和链接时间。 ( )

答案:真的

Part4: 阅读C代码

  1. 编程运行时输出什么?

文件a.h: ... #define MACRO ... 文件b.h ... #ifdef MACRO #undef MACRO #endif ... 文件c.h #include "a.h" #include "b.h" #ifdef MACRO ... #else #error "error: MACRO is not defined" #endif

答案:MACRO没有定义的错误消息将被输出。

  1. 以上C编程中哪句话是错误的?

char EXMPL_sSomeBuffer= EXMPL_sInitBuffer(); struct SomeT EXMPL_xCountry= { /Name/ "germany", /Code/ "D" }; ... char* sFirstSub; char* sSecondSub; ... sFirstSub= EXMPL_sSomeBuffer; sSecondSub= EXMPL_sSomeBuffer+ EXMPL_i8BufferLength; while(sFirstSub <= sSecondSub) /* ok */ { ... sFirstSub++; sSecondSub--; } ... sSecondSub= EXMPL_xCountry.cCode; ... if(sFirstSub <=sSecondSub) ...

答案:第一句话是错误的,因为它试图将一个函数赋给一个字符变量。


原文地址: https://www.cveoy.top/t/topic/oMW0 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录