数组的初始化&缩窄转换
1.初始化:
初始化就是在声明变量的同时给变量赋值,而不是声明后再赋值。
先声明,后赋值:
int a; //先声明,由于没有初始化,所以当前a的值是变量a创建前,相应的内存单元中保留的值,是未知的
a = ; //后赋值,此时a得到赋值,有了明确的值
声明的同时赋值(初始化):
int a = ; //为变量a开辟内存空间的同时把该内存空间的值改写成1,此时a的值是明确的
2.缩窄转换:
①将较大的浮点类型转化为较小的浮点类型:如将double转换成float,此举将会导致精度(precision)降低,值可能超出目标类型的取值范围,在这种情况下,结果将是不确定的。
②将浮点类型转换为整形:此举将会导致小数部分丢失,原来的值可能会超出目标类型的取值范围,再这种情况下,结果将是不确定的。
③将较大的整形转化为较小的整形:如将long转换位short,原来的值可能超出目标类型的取值范围,通常只复制右边的字节。
3.数组的初始化
①可以使用大括号初始化:
如:int arry_1[10]={1,2,3,4,5,6,7,8,9,10};
②大括号里可以不包含任何东西:
如:int arry_2[10]={}; //所有元素都将被初始化为0.
③数组长度可以缺省:
如:int arry_3[]={1,2,3,4,5}; //此时数组长度等于初始化值表中元素的个数,5
④列表初始化禁止缩窄转换:
如:long arry_4[]={3,5,3.4}; //错误,不能把double型转换为long型
char arry_5[]={'a','b',23333333}; //错误,23333333超过了char变量的取值范围
char arry-6[]={'a','c',20}; //正确,20在char的取值范围内
数组的初始化&缩窄转换的更多相关文章
- javascript中的Array对象 —— 数组的合并、转换、迭代、排序、堆栈
Array 是javascript中经常用到的数据类型.javascript 的数组其他语言中数组的最大的区别是其每个数组项都可以保存任何类型的数据.本文主要讨论javascript中数组的声明.转换 ...
- php如何遍历多维的stdClass Object 对象,php的转换成数组的函数只能转换外面一丛数组
php如何遍历多维的stdClass Object 对象,php的转换成数组的函数只能转换外面一丛数组 (2012-09-10 19:58:49) 标签: 杂谈 分类: 网页基础知识 php如何遍历多 ...
- Java中数组的初始化方式
Java中数组的初始化方式 初始化方式有两种: 1.静态初始化:初始化时由程序猿显式指定每一个数组元素的初始值,由系统指定数组长度 2.动态初始化:初始化时由程序猿仅仅指定数组长度,由系统为数组 ...
- json 数组 对象 xml 之间转换(待补充)
json 数组 xml 对象 之间转换(待补充) 1 把对象的类型或者数组转换成字符串类型(或者更确切的说是json类型的). 此处参考链接http://www.jb51.net/article ...
- Java 代码学习之数组的初始化
我们都很熟悉Java中的数组,它具有查询快,增删慢的特点.但是通常我们自认为很了解它的用法,却容易忽略一些小细节.今天通过一段代码来简单了解数组初始化中的一些我们容易忽略的地方. package da ...
- js数组,字符串,json互相转换函数有哪些
js数组,字符串,json互相转换函数有哪些 一.总结 一句话总结: JSON.stringify(arr) JSON.parse(jsonString) str.split('') array.jo ...
- c++中用vector创建多维数组的初始化方法
最近调试一个程序,在使用vector声明一个二维数组时出现错误.错误的方法如下所示: std::vector<std::vector<double> > sphereGrid; ...
- go语言基础之数组的初始化
1.数组的初始化 示例: package main //必须有个main包 import "fmt" func main() { //声明定义同时赋值,叫初始化 //1.全部初始化 ...
- Delphi下使用指针的简单总结(指针的赋值,数组和指针的转换,函数指针的使用)
由于最近公司太忙,好久没有更新我的BLOG了.原来想着写写关于HOOK驱动的文章,可是最后想想好久已经没有做驱动的东西了,怕写出来有错误,于是作罢.开发游戏也有一段时间了,发现使用DELPHI来开发网 ...
随机推荐
- rsyncd启动脚本
#!/bin/bash ############################################################## # File Name: -.sh # Versi ...
- css悬浮提示框
效果图: code: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- go语言使用xpath
1.导包 gopm get -g -v github.com/lestrrat-go/libxml2 2.使用示例 func ExampleHTML() { res, err := http.Get( ...
- c++消息队列的实现
#ifndef NET_FRAME_CONCURRENT_QUEUE_H #define NET_FRAME_CONCURRENT_QUEUE_H #include <queue> # ...
- c++入门篇八
构造函数的调用规则: 系统会提供三个函数,一个是默认的构造函数(无参,函数体为空),一个是拷贝构造函数(无参,函数体为空),一个是析构函数,对类中非静态成员属性简单值拷贝\如果用户定义了拷贝构造函数, ...
- java类(Class)的概念;对象的概念,声明类的属性 和方法,局部变量和成员变量,面向对象编程思维,抽象的概念
类(Class)的概念 类是对一组具有相同特征和行为的对象的抽象描述. 理解: [1] 类包含了两个要素:特性和行为 => 同一类事物具有相同的特征和行为. [2] 类是一个群体性概念.例如:网 ...
- Python IDLE配置清屏快捷键(Ctrl+L)
1.在Python\Lib\idlelib下,新建一个ClearWindow.py文件(没有时就新建),内容如下: """ Clear Window Extension ...
- oracle INS-13001 环境不满足最低要求
使用windows10等系统安装oracle 11g等版本的数据库时,经常会发现开始安装时弹出[INS-13001 环境不满足最低要求]的提示,此时可以点击[是]继续安装. 也可以点击[否]结束安装, ...
- MTV 和 MVC
MTV:(Django中用) M:models T:templates V:views MVC M:models V:views C:control(urls+views)
- Jace 上新建 Station 配置 笔记
1.Station站点的结构图 2.niagara 结构框架图 Niagara 系统的架构是围绕着“以组件(Component)为导向的编程”为核心设计的.组件(Component)是使用Java 编 ...