c++ Primer 第二章 变量和基本类型
2022/9/17 14:17:23
本文主要是介绍c++ Primer 第二章 变量和基本类型,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
2.1 基本内置类型
包括算术类型和空类型
2.1.1 算术类型
带符号类型和无符号类型
- 带符号类型:可以表示正数、负数或0
- 无符号类型:仅能表示大于0的值
2.1.2 类型转换
#include <iostream> int main() { bool b = 42; // b为真 int i = b; // i为1 std::cout << b << " " << i << std::endl; i = 3.14; // i为3 double pi = i; // pi为3.0 std::cout << i << " " << pi << std::endl; unsigned char c1 = -1; signed char c2 = 256; std::cout << c1 << " " << c2 << std::endl; return 0; }
2.2 变量
略
2.3 复合类型
引用和指针
2.3.1 引用
引用相当于别名,与一个已经存在的对象绑定起来
引用必须在定义时赋值
#include <iostream> int main() { int val = 1024; int &refVal = val; //refVal指向val, refVal表示一个引用与val绑定起来 return 0; }
2.3.2 指针
指针本身就是一个对象,允许对指针赋值和拷贝
指针无需再定义时赋值
#include <iostream> int main() { double val = 3.14; double *pVal = &val; //pVal表示指针指向变量val std::cout << pVal << std::endl; //地址 std::cout << *pVal << std::endl; //值 return 0; }
#include <iostream> int main() { double val = 3.14; double *pVal = &val; *pVal = 0; //通过指针改变val值 std::cout << pVal << std::endl; //地址 std::cout << *pVal << std::endl; //值 std::cout << val << std::endl; //值为0 return 0; }
void 指针* 无法访问内存空间所存的对象
指向指针的指针
#include <iostream> int main() { int val = 1024; int *pVal = &val; int **ppVal = &pVal; return 0; }
2.4 const限定符
值不能被改变的变量
2.5 处理类型
2.5.1 类型别名
typeof
typeof longlong LL;
using
using SI = Sales_item;
auto类型
c++ 11 新特性
#include <iostream> int main() { auto i = 0; auto c ='c'; std::cout << i << " " << c << std::endl; return 0; }
2.6 自定义数据结构
2.6.1 Sales_data
#include <iostream> #include <string> struct Sales_data { std::string bookNo; unsigned units_sold = 0; double revenue = 0.0; }; int main() { Sales_data data1; data1.bookNo = "111"; data1.revenue = 11.11; data1.units_sold = 1; std::cout << data1.bookNo << " " << data1.revenue << " " << data1.units_sold << std::endl; return 0; }
2.6.2 自定义头文件
略
这篇关于c++ Primer 第二章 变量和基本类型的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-26怎么使用nsenter命令进入容器?-icode9专业技术文章分享
- 2024-12-26导入文件提示存在乱码,请确定使用的是UTF-8编码怎么解决?-icode9专业技术文章分享
- 2024-12-26csv文件怎么设置编码?-icode9专业技术文章分享
- 2024-12-25TypeScript基础知识详解
- 2024-12-25安卓NDK 是什么?-icode9专业技术文章分享
- 2024-12-25caddy 可以定义日志到 文件吗?-icode9专业技术文章分享
- 2024-12-25wordfence如何设置密码规则?-icode9专业技术文章分享
- 2024-12-25有哪些方法可以实现 DLL 文件路径的管理?-icode9专业技术文章分享
- 2024-12-25错误信息 "At least one element in the source array could not be cast down to the destination array-icode9专业技术文章分享
- 2024-12-25'flutter' 不是内部或外部命令,也不是可运行的程序 或批处理文件。错误信息提示什么意思?-icode9专业技术文章分享