0%

C++基础唐题学习8.10

C++唐题学习(8.10)

C++处理异常机制

检查、抛出和捕获(try,throw,catch)

该函数参数为1时返回值为()

int GetResult(int a){
  int b = 0;
      __try{
          if ( a != 0 ){
             b++;
          }
          return b;
      }
    __finally{
        --b;
        }
    return b;
}

在函数体_ try内,return语句将变量b的值暂存,然后跳转到_ finally块,_ finally块中若无return,则再返回到_ try块中返回暂存值;

 

不同类型计算

int main() {
    int m = 7, n = 4;
    float a = 38.4, b = 6.4, x;
    x = m/2 + n*a/b + 1/2;
    printf("%f\n", x);  
    return 0;
}
答案 27.000000

先是以各自类型进行计算,然后转为float

 

模板类

  • 可用来创建动态增长和减小的数据结构
  • 它是类型无关的,因此具有很高的可复用性。
  • 它在编译时而不是运行时检查数据类型,保证了类型安全
  • 它是平台无关的,可移植性
  • 可用于基本数据类型

 

指针与数组与指针

哪家企业这么写代码的?我避个雷

下述程序的输出是__

#include<stdio.h>
int main(){
    static char *s[] = {"black", "white", "pink", "violet"};
    char **ptr[] = {s+3, s+2, s+1, s}, ***p;
    p = ptr;
    ++p;  
    printf("%s", **p+1);
    return 0;
}

你自己猜一下答案吧。