HK面试经历

首先是笔试。
笔试题题目不是很难,博主投的嵌入式软件岗位,题目全是考C语言的。比如数组、指针的sizeof, 宏定义#define ADD(x) (x)+(x)问题,再一个就是内存问题,malloc 的使用,分配内存的题目,网上到处都是。再一个就是写一个字符串比较函数,不区分大小写,也就是自己写一个strcasecmp()

接着是面试。两个技术主管过来,问了问项目,然后针对笔试题题目又问了问,Linux相关的似乎没有问到。其中有一个问题很重要,以前也碰到过:工作中遇到的印象最深的bug或难题,你是如何克服的。这个可以提前想一想。

后面就是人力过来,简单说了两句,也就是一个问题,你为什么离职,这是人力必问的问题。

关于待遇什么的,根本没有涉及,感觉笔试面试都挺好,不知道会不会被刷了,等通知吧。

附代码片段
第一个 区分大小写

int mystrcmp(const char *str1, const char *str2)
{
    if (str1 == NULL || str2 == NULL)
    {
        return -1;
    }

    const char *p1 = str1;
    const char *p2 = str2;

    while(*p1 && *p2)
    {
        if (*p1 != *p2 )
        {
            return -1;
        }

        p1++;
        p2++;
    }

    if(*p1 == *p2)
    {
        return 0;
    }
    else
    {
        return -1;
    }

}

第二个不区分大小写

int mystrcasecmp(const char *str1, const char *str2)
{
    if (str1 == NULL || str2 == NULL)
    {
        return -1;
    }

    const char *p1 = str1;
    const char *p2 = str2;

    while(*p1 && *p2)
    {
        if (*p1 > 'A' && *p1 < 'Z')
        {
            if (*p2 > 'A' && *p2 < 'Z')
            {
                 if (*p1 != *p2 )
                {
                    return -1;
                }
            }
            else if (*p2 > 'a' && *p2 < 'z')
            {
                 if ((*p1 + 'a' - 'A') != *p2 )
                {
                    return -1;
                }
            }
            else
            {return -1;}
        }
        else if (*p1 > 'a' && *p1 < 'z')
        {
            if (*p2 > 'A' && *p2 < 'Z')
            {
                 if (*p1 != (*p2 + 'a' -'A') )
                {
                    return -1;
                }
            }
            else if (*p2 > 'a' && *p2 < 'z')
            {
                 if (*p1 != *p2 )
                {
                    return -1;
                }
            }
            else
            {return -1;}
        }
        else if (*p1 != *p2 )
        {
            return -1;
        }

        p1++;
        p2++;
    }

    if(*p1 == *p2)
    {
        return 0;
    }
    else
    {
        return -1;
    }


    return 0;
}

你可能感兴趣的:(面试)