Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11429
  • 博文数量: 11
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 80
  • 用 户 组: 普通用户
  • 注册时间: 2015-03-21 14:28
文章分类

全部博文(11)

文章存档

2015年(11)

我的朋友
最近访客

分类: C/C++

2015-08-15 02:00:08

1.Typedef 在C语言中频繁用以声明一个已经存在的数据类型的同义字。也可以用预处理器做类似的事。例如,思考一下下面的例子:
    #define dPS struct s *
    typedef struct s * tPS;
    以上两种情况的意图都是要定义dPS 和 tPS 作为一个指向结构s指针。哪种方法更好呢?(如果有的话)为什么?

  • typedef 更好,因为重命名具有关键字的作用,而define只是简单的文本替换,灵活性较差

2.C语言同意一些令人震惊的结构,下面的结构是合法的吗,如果是它做些什么?
    int a = 5, b = 7, c;
    c = a+++b;

  • 在C的编译器中,是从左往右进行检测的,直到遇到无法识别的运算符, ++ 是可以识别的,+++就无法识别了,所以判断为++ + 
3、局部变量能否和全局变量重名?
  • 可以的,但在局部变量会优先级高于全局变量

4.如何引用一个已经定义过的全局变量?
  • extern

5.全局变量可不可以定义在可被多个.C文件包含的头文件中?为什么?   
  • 不行.会有重复定义的错误

6、请写出下列代码的输出内容   
    #include    
    int main(void)   
    {    
    int a,b,c,d;
      a=10;  
      b=a++;  
      c=++a;   
      d=10*a++;  
      printf("b,c,d:%d,%d,%d",b,c,d);  
      return 0;  
     }
  • b=10,c=12,d=120

5、static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?  
  • 两者都是存放在静态区,但存放的地方并不是连续的,普通全局变量是高地址往低地址走,而static是在另一片区域,从低地址往高地址走
  • static局部变量是存放在静态区,生命周期是最后结束的,而普通的局部变量是存放在栈中,生命周期只限于局部
  • static函数仅自己可见,普通函数大家都可见

6.设有以下说明和定义:  
  typedef union
{
long i;
int k[5];
 char c;
} DATE;  
 struct data
 {
   int cat;
   DATE cow;
double dog;
} too;  
 DATE max;   
  • printf("%d",sizeof(struct data)+sizeof(max));的执行结果是  24+8+20=52

7.队列和栈有什么区别?
  • 队列是先进先出,栈是先进后出

8.
写出下列代码的输出内容   
    #include   
    int inc(int a)   
    { 
    return(++a);
    }   
    int multi(int*a,int*b,int*c)   
    {  
     return(*c=*a**b); 
    }  
    
typedef int(FUNC1)(int in);   
    typedef int(FUNC2) (int*,int*,int*);  
    void show(FUNC2 fun,int arg1, int*arg2)  
    {    
      FUNC1 p=&inc;   
      int temp =p(arg1);   
      fun(&temp,&arg1, arg2);   
      printf("%dn",*arg2);   
    }   
    main()   
    
{   
      int a;          //局部变量a为0;
      show(multi,10,&a);    
     return 0;
    }  
  • 输出:110

9.对于一个频繁使用的短小函数,在C语言中应用什么实现
  • 内联或者宏定义

10.
软件测试都有那些种类?  
  • 黑盒:针对系统功能的测试   
  • 白盒:测试函数功能,各函数接口 

  

阅读(272) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~