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+空格才能转换为中文.非常不方便. 即使将微软拼音默认为中文也不管用,解决方法如下: 设置后,无论你打开运行.记 ...
随机推荐
- 【巷子】---webpack配置非CMD规范的模块
一.前言 webpack在配置多页面开发的时候 ,发现用 import 导入 Zepto 时,会报 Uncaught TypeError: Cannot read property 'createEl ...
- OSI互联数据包封装与解封装过程
当我们在七层协议最上层,主机A想和其它主机通信, 比如telnet到主机B,各层都为数据打包后再封装上自己能识别的数据标签,现在我们只说四层以下的通信过程. .当一个高层的数据包到达传输层,由于tel ...
- POJ 2653 - Pick-up sticks - [枚举+判断线段相交]
题目链接:http://poj.org/problem?id=2653 Time Limit: 3000MS Memory Limit: 65536K Description Stan has n s ...
- 【Python】关于Python多线程的一篇文章转载
猪哥推荐的学习网址 http://www.jb51.net/article/110164.htm yeayee ------>更多技巧------>更多源码------>http:/ ...
- 006-jdk1.5版本新特性
一.Java SE 5.0 (1.5.0) 名称:Tiger(老虎) 发布日期:2004-09-30 新特性: 1.1.静态导入 定义:静态导入用于简化程序对类静态属性和方法的调用. 语法: impo ...
- vue之vue-cookies
vue之vue-cookies npm链接:https://www.npmjs.com/package/vue-cookies 安装: npm install vue-cookies --save 使 ...
- Spark-2.0原理分析-shuffle过程
shuffle概览 shuffle过程概览 shuffle数据流概览 shuffle数据流 shuffle工作流程 在运行job时,spark是一个stage一个stage执行的.先把任务分成stag ...
- [py][mx]xadmin详细设置-将app注册到xadmin
首先createsuperuser,创建用户, 然后登陆xadmin. 理解下models的各个字段 复数形式及返回 注册app users/adminx.py 显示字段 users/adminx.p ...
- POJ1014:Dividing(多重背包)
http://poj.org/problem?id=1014 Description Marsha and Bill own a collection of marbles. They want to ...
- hdu1305Immediate Decodability(字典树)
这题看是否 这题能A是侥幸,解决的办法是先存一下输入的字符串,进行排序. Problem Description An encoding of a set of symbols is said to ...