奥比
8月30投递9月4日一面:自我介绍介绍一下SPI IIC UART CAN的区别(因为项目里面有用到)    主要根据同步与异步分开陈述    SPI IIC同步    CAN UART异步    再对他们的时序简述一下FreeRTOS移植过程    怎么移植的就怎么讲,主要是项目内容C语言的结构体对齐    简单讲述一下,自己举了个例子反问9月14二面:自我介绍还是讲述一下一面几个通信协议的时序CPU中断响应流程    很经典的问题,答出来了volatile关键字的作用    防止编译器优化,有些变量会因为被频繁使用,编译器优化后不是在内存中取值,导致一些后果,balabala下面这个结构体32位机对齐typedef struct{    char a;    int b;    char c:2;}x_str;改一下,再来一个typedef struct{    short a:7;    int b;    char c;}x_str;    冒号差点错了,不过大体上没啥问题看程序,哪里有错char * getName(int id){    struct city     {        int id;        char name[8];    };    struct city data[3]={{0,"Beijing"},{1,"Nanning"},{2,"Shenzhen"}};    for (int i = 0; i <= 3; i++)    {        if (id == data[i].id)            return datal[i].name.    }    return NULL;}int main(int argc, char *argv[]){    char *p ="Unknown City";    char *q = NULL;    for (int i = 0, i <= 3; i++)    {        q = getName(i);        p = malloc(strlen(q));        strcpy(p,q);    }}反问期待三面
点赞 9
评论 7
全部评论

相关推荐

Wy_m:只要不是能叫的上名的公司 去实习没有任何意义 不如好好沉淀自己
点赞 评论 收藏
分享
03-25 19:00
东北大学 Java
程序员牛肉:太好了,是聊天记录。不得不信了。 当个乐子看就好,不要散播焦虑
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务