信果科技有限公司
2013-09-24

注:笔试题根据面试者回忆记录,仅供参考;

1、头文件中的 ifndef/define/endif 干什么用?

2、有关内存的思考题
2.1请问运行Test函数会有什么样的结果?

     void GetMemory(char *p)
     {
          p = (char *)malloc(100);
     }

     void Test(void)
     {
          char *str = NULL;
          GetMemory(str);   
          strcpy(str, "hello world");
     printf(str);
     }

2.2请问运行Test函数会有什么样的结果?
     char *GetMemory(void)
     {   
          char p[] = "hello world";
          return p;
     }

     void Test(void)
     {
          char *str = NULL;
          str = GetMemory();    
          printf(str);
     }

2.3请问运行Test函数会有什么样的结果?
     void GetMemory2(char **p, int num)
     {
          *p = (char *)malloc(num);
     }
   
     void Test(void)
     {
          char *str = NULL;
          GetMemory(&str, 100);
          strcpy(str, "hello");   
          printf(str);    
     }

2.4请问运行Test函数会有什么样的结果?
     void Test(void)
     {
          char *str = (char *) malloc(100);
          strcpy(str, “hello”);
          free(str);      

    if(str != NULL)
    {
          strcpy(str, “world”);
          printf(str);
     }

3、编程题:
一个小兔子 第四个月生一个 ,n个月有多少个?