c++第五天:默认初始化
1、算数类型。(整型和浮点型)
类型决定了数据所占的比特数以及该如何解释这些比特的内容。
练习2.1。。。 各种类型在计算机中所占的比特数不同,解释方法不同。有符号要花费一个比特存储符号,最大正值要比无符号的小。
float和double就在计算机内所占比特数量而言通常分别为32位和64位,就解释后的精度而言分别有7个和16个有效位,ps:通常,执行浮点数运算选用double,整数运算选int 或者 long long
练习2.2 全部无符号的double?
2、类型转换。关于-1%256=255,一个负数B对一个正数A取模,在B上加A,直到B变成正数,然后再对A取模。
参考:http://bbs.csdn.net/topics/390837091
练习2.3 32 42949672** 32 -32 0 0
练习2.4
D:\lab_>prog1
32
4294967264
32
-32
0
0
3、字面常量
练习 2.6 十进制和八进制的区别。 09作为八进制是不合法的,无法编译。
练习 2.7
#include<iostream> int main()
{
// std::cout << "2\115" << '\n';
std::cout << "2\t\115" << '\n';
return ;
}
4、变量定义
比较关键的地方:变量的概念。 区分初始化与赋值。
值得关注的地方: 列表初始化。(用花括号来初始化变量, 若初始值存在丢失信息的风险, 则编译器将报错)
以及: 未被显式初始化的情况
——> 默认初始化:内置类型变量分两重情况(由位置决定)分别为 0 或 未定义,类由自己决定。
练习 2.9
#include<iostream> int main()
{
std::cin >> int input_value; // 不可编译。
int i = { 3.14 }; // 可编译。编译器不报warning。精度丢失。 ps:相当于 i = 3.14?
int i{3.14} // 可编译。编译器报warning。精度丢失。
double salary = wage = 9999.99; // 不可编译。
int i = 3.14 ; // 可编译。编译器不报warning。精度丢失。
return ;
}
练习 2.10
#include<iostream> std::string global_str; // 类的默认初始化由自己决定:空字符串
int global_int; // 内置类型的初始化由位置决定: 0 int main()
{
int local_int; //内置类型的初始化由位置决定: 不被初始化, 尝试输出是4201131
std::string local_str; // 类的默认初始化由自己决定:空字符串
}
为什么不是“但凡没有初始化的变量都进行默认初始化”呢?
c++第五天:默认初始化的更多相关文章
- 默认初始化&拷贝初始化&直接初始化&值初始化&列表初始化
一.各种初始化的形式 /* 定义变量形式一:不指定初始值 */ int a; // 默认初始化 /* 定义变量形式二:指定初始值 */ int b = 1; // 拷贝初始化 int b(1); // ...
- java变量和作用域以及成员变量的默认初始化
Java中的变量有成员变量和局部变量,定义在类中方法之外的变量成为成员变量或者成员字段(域),表示一个类所具有的属性,定义为类的成员变量的变量的作用于是整个类,该变量在定义的时候不需要初始化,在使用前 ...
- mysql使用模板解决旧数据处理,默认初始化数据的通用方法!
一 业务介绍 先来看看我这得大致业务需求,这次业务比较简单: 即从现在开始,每次new一个爷爷都需要默认初始化给这个爷爷三个儿子(子表,爷爷id去关联),并在初始化每个儿子的同时再给每个儿子初始化若干 ...
- C++:默认初始化
一.什么是默认初始化 默认初始化,顾名思义,即为在定义变量时如果没有为其指定初始化值,则该变量会被C++编译器赋予默认的值.而变量被赋予的默认值到底是什么,则取决于变量的数据类型和变量的定义位置. 二 ...
- 探究c++默认初始化
按照c++ primer 5th第40页的描述,如果定义变量时没有指定初值,则变量被默认初始化,此时变量被赋予了“默认值”. 根据变量定义的位置,分为两种情况: 1.定义于任何函数体之外的变量被初始化 ...
- C++ 值初始化和默认初始化
对于初始化的问题,我之前一直傻傻分不清.有关初始化以及赋值的区别也是一问题,这次回过头来看,配合<<CSAPP>>的内容,对初始化有了一些新的认识. 声明: 在环境/上下文中指 ...
- c++全局变量,局部变量,内存布局,默认初始化
全局变量 定义在所有函数之外的变量,main函数之内的变量也是局部变量,Globle variable 未显示初始化时执行默认初始化 局部变量 定义在函数之内的变量,Local variable 未 ...
- Pytorch的默认初始化分布 nn.Embedding.weight初始化分布
一.nn.Embedding.weight初始化分布 nn.Embedding.weight随机初始化方式是标准正态分布 ,即均值$\mu=0$,方差$\sigma=1$的正态分布. 论据1——查看 ...
- Win10 QQ五笔默认中文,InputMode默认中文
Win10系统安装了QQ五笔后,InputMode默认英文,必须用鼠标点或者按 Ctrl+空格才能转换为中文.非常不方便. 即使将微软拼音默认为中文也不管用,解决方法如下: 设置后,无论你打开运行.记 ...
随机推荐
- libmv
What is libmv? libmv, also known as the Library for Multiview Reconstruction (or LMV), is the comput ...
- OpenCV学习笔记之课后习题练习3-4
练习:创建一个大小为100*100的三通道RGB图像.将它的元素全部置0.使用指针算法以(20,5)与(40,20)为顶点绘制一个绿色平面. 参考博文:blog.csdn.net/qq_2077736 ...
- os.stat(filename).st_size 文件信息
os.path.getsize(i) py36\Lib\genericpath.py def getsize(filename): """Return the size ...
- function $(id) {}表示什么函数
function $(id) {}表示什么函数 一.总结 1.就是简写,不然每次打document.getElementById很烦 二.问题 function $(id) {return docum ...
- 前端(以Vue为例)webpack打包后dist文件包如何部署到django后台中
由于现在前端使用的三大框架配合webpack可以实现快速打包,为部署到服务端提供了非常大的便利,那么在前端打包后,应该做些什么可以部署到django的后台中呢? 1.打包后文件包dist 进入到 di ...
- SQL SERVER 2008 误删数据且无全备恢复方法
原文:http://www.jb51.net/article/84932.htm SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至 ...
- python 基础3 函数
函数是什么? 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的,具体区别,我们后面会讲,编程中的函数在英文中也有很多不同的叫法.在BASIC中叫做subroutine(子过程或 ...
- 实习培训——Java基础(2)
实习培训——Java基础(2) 1 Java 变量类型 在Java语言中,所有的变量在使用前必须声明.声明变量的基本格式如下: type identifier [ = value][, identi ...
- A + B Problem II(大数加法)
一直格式错误,不想改了,没A #include <iostream> #include <stdio.h> #include <string.h> #include ...
- 最小生成树(kruskal模版 Prim模板)
http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2144&cid=1186 最小生成树,最重要的是了解思想 稠密图用Prim,稀疏图用Kru ...