零散4

零散4

  • 给定C语言数据结构
    
    struct T{
    
    long w;
    
    union U{char c; int i; double d;}u1;
    
    } T1;
    
    假设在64位系统下,在不考虑字对齐方式的情况下
    
    为存储T1结构所需要的存储区域可能为(12或16)字节。
    
    c语言中的union 是联合体,就是一个多个变量的结构同时使用一块内存区域,区域的取值大小为该结构中长度最大的变量的值; 
    
      (1)32位:double 8字节,long 4字节,则最终12字节; 
    
      (2)64位:double8字节,long8字节,最终16字节 
    
  • 有以下语句定义
    int a[2][3];
    int (*p)[3]=a; 
    int *q=*a;
    则能输出a[1][2]的值的语句是(ABC)
    cout<<*(*(a+1)+2)
    cout<<p[1][2];
    cout<<*(q+5);
    cout<<q[1][2];
    
  • 关于&和&&,描述正确的是CD
    对于&amp;和&amp;&amp;:当运算符两边的表达式为true时,结果均为true,只要有一边运算结果为false, 则结果均为false
    如果运算符左边计算结果为false,则&amp;不会再继续计算右边表达式值
    如果运算符左边计算结果为false,则&amp;&amp;不会再继续计算右边表达式值
    &amp;可以作为位运算符,而&amp;&amp;不能
    
  • 已知数组D的定义是int D[4][8];,现在需要把这个数组作为实参传递给一个函数进行处理。下列说明汇总可以作为对应的形参变量说明的是(CD)。
    int D[4][]
    int *s[8]
    int(*s)[8]
    int D[][8]
    
  • char类型值的数值区间为-128~127

  • 请声明一个指针,其所指向的内存地址不能改变,但内存中的值可以被改变。
    int * const x = &y;
    const位于*左 指向的值不变,const位于*右侧,指针指向不可改变
    
  • 对象成员的表示方法与结构体变量成员的表示方法相同

  • 下面程序的输出结果为多少? 6 5 4 4
    
    void Func(char str_arg[100])
    {
        printf("%d\n", sizeof(str_arg));
    }
    int main(void)
    {
        char str[] = "Hello";
        printf("%d\n", sizeof(str));
        printf("%d\n", strlen(str));
        char *p = str;
        printf("%d\n", sizeof(p));
        Func(str);
    }
    
    对字符串进行sizeof 操作的时候,会把字符串的结束符“\0”计算进去的,进行strlen 操作求字符串的长度的时候,不计算\0 的。
    数组作为函数参数传递的时候,已经退化为指针了,Func 函数的参数str_arg只是表示一个指针,那个100不起任何作用的。
    
  • 下列关于赋值运算符“=”重载的叙述中,正确的是A
    赋值运算符只能作为类的成员函数重载
    默认的赋值运算符实现了“深层复制”功能  //默认的赋值运算符实现了“浅层复制”功能
    重载的赋值运算符函数有两个本类对象作为形参  //一个
    如果己经定义了复制拷贝构造函数,就不能重载赋值运算符  //可以
    
  • 函数中的静态变量,在函数退出后不被释放

  • m%(-n) 等于m%n; (-m)%n 等于-(m%n)

  • 下面代码打印结果为(8)
     class Base {
     char data[3];
     public:
     virtual void f() { cout << "Base::f" << endl; }
     virtual void g() { cout << "Base::g" << endl; }
     virtual void h() { cout << "Base::h" << endl; }
    
     };
     int main()
     {
     cout << sizeof(Base)<< endl;
     return 0; 
     }
    
    类中虚函数存放的只是虚函数表的指针,4个字节,加上char求组的3个字节,对齐以后就是8字节
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值