C++ Primer(第5版) 练习 2.35

练习 2.35 判断下列定义推断出的类型是什么,然后编写程序进行验证。

const int i = 42;
auto j = i;
const auto &k = i;
auto *p = &i;
const auto j2 = i, &k2 = i;
环境:Linux Ubuntu(云服务器)
工具:vim

 

解释

i为const int型。
j为int型。
k为const int &型。
p为const int*型。
j2为const int型。
k2为const int &型。

代码块
/*************************************************************************
	> File Name: ex2.35.cpp
	> Author: 
	> Mail: 
	> Created Time: Mon 22 Jan 2024 03:02:48 PM CST
 ************************************************************************/

#include<iostream>
using namespace std;

int main(){
    const int i = 42;
    auto j = i;
    j = 0;
    cout<<"i = "<<i<<" j = "<<j<<endl;

    const auto &k = i;
    k = 0;
    cout<<"k = "<<k<<endl;

    auto *p = &i;
    *p = 0;
    cout<<"*p = "<<*p<<endl;

    const auto j2 = i, &k2 = i;
    j2 = 0;
    k2 = 0;
    cout<<"j2 = "<<j2<<" k2 = "<<k2<<endl;
    return 0;
}
运行结果显示如下

C++ //练习 2.35 判断下列定义推断出的类型是什么,然后编写程序进行验证。-LMLPHP

01-23 10:04