[C++学习历程]基础部分 C++中的类型和声明
前面搭起了C++的VS环境,可以在VS中编写C++代码了,也运行了最简单的一个程序Helloworld.那么我们该怎么才能写出功能强大的程序,怎样才能随心所欲的应用呢,那就需要重新回头来,从C++基础逐步学起。我使用的是《C++程序设计语言_特别版》,在这个版本中,对应的章节是第四节:类型和声明。
本文地址:http://blog.csdn.net/sushengmiyan/article/details/19934531
作者:sushengmiyan
一、基本类型
C++中基本类型可以分为两大整体,内部类型和用户自定义类型。
内部类型包含:布尔型(即对和错,true or false)、字符类型(如char) 整数类型(如 int) 浮点类型(如Float)
还有指针类型、数组类型、引用类型、数据结构和类。
1.布尔型
在C++中,布尔可以与整数类型进行转换。按照定义,true值具有值1 false具有值0.
因此可以进行相互转换。如 bool susheng = 7; 那么susheng即表示true 所有非零的表示是true 0表示是false 也可以进行运算,如 bool susheng = 0/2 那么susheng是0除2的结果0 转换成布尔即false
在C++中,指针也可以隐式的转换为布尔值,非零指针转换为true 零指针转换为false
2.字符类型
字符会涉及编码,不同编码会潜在的会存在一些不同平台的影响。字符也可以转换为int型,如:
int susheng ;
char miyan = "A";
susheng = int(miyan);
susheng就表示着A的Ascii码值。
其中 char 可以定义成 signed char 和unsigned char 其中 signed char表示数值范围是-127----128unsigned char 表示的是0---255
3.整数类型
整数也是同char一样分为assiged和unsiged类型。表示数值就是-127---128 和0---255;
整数类型还区分二进制十进制与十六进制。
4.浮点类型
简单的来说,浮点就是带小数点的这样的,表示的更精确的,这会方便我们进行一些精确运算。至于为什么不直接就使用浮点,不要整形,这是涉及内存占用问题的,提供这些类型给程序员选择,是为了合理的优化资源占用,避免申请了浮点的类型却操作的是一些简单整数类型,这样就是占着茅坑不拉屎了。
5.枚举
大概所有程序语言的枚举类型都是一个概念。在C++中枚举是一个类型,由用户来刻画,比如我们可以定义颜色为一个枚举。然后使用颜色的时候就从这个枚举中遍历取值。
enum color{red, green, blue}
这就是一个枚举类型。
还有枚举的一些整型转换,没有看太明白~唔。
二、声明
要在程序中使用一个名字,必须先进行声明,就是说要先制定这是个什么类型的,然后你再用它来进行一些操作,这也很简单,就像 乐乐这个名字,你想给乐乐执行洗澡这项动作,那么你总需要知道乐乐是什么吧,或许乐乐只是一个玩具,或者乐乐是一条宠物,更甚,乐乐就是一人名。那么你不声明,就拿乐乐来洗澡,那是不合适的,给玩具洗澡,你可以使用凉水,但是给人洗澡,你用冰冷的水,那他就可能要感冒了。
声明的格式很固定: 就是先制定类型,然后指出名称。如定义susheng是一个字符串类型的,那么可以这样写:
string susheng;
或者你可以给他制定一个默认值,如
string susheng = "苏生";
运算符只作用于一个单独的名字,如
int* p,y;表示的是int*p ,int y 而不是int*p,int*y;
为了防止这样的阅读不方便的情况,应对避免这样书写。
[C++学习历程]基础部分 C++中的类型和声明的更多相关文章
- [C++学习历程]基础部分 C++中的指针数组和结构
作者:苏生米沿 本文地址:http://blog.csdn.net/sushengmiyan/article/details/19938177 一.指针 对学习C++来说,指针是一项重要内容,以前,教 ...
- [C++学习历程]基础部分 C++中的函数学习
本文地址:http://blog.csdn.net/sushengmiyan/article/details/20305815 作者:sushengmiyan 一.静态变量: 局部变量是线程到达定义的 ...
- [C++学习历程]基础部分 C++中的函数中的值参数、地址参数、引用参数实际例子
本文地址:http://blog.csdn.net/sushengmiyan/article/details/20406269 作者:sushengmiyan // sushengmiyanTest. ...
- [C#] 类型学习笔记一:CLR中的类型,装箱和拆箱
在学习.NET的时候,因为一些疑问,让我打算把.NET的类型篇做一个总结.总结以三篇博文的形式呈现. 这篇博文,作为三篇博文的第一篇,主要探讨了.NET Framework中的基本类型,以及这些类型一 ...
- 学习Python3基础知识过程中总结
print()中end==""的用法 例子:用Python3输出九九乘法表: for i in range(1,10): for j in range(1,i+1): s=i*j ...
- 【Java学习笔记之八】JavaBean中布尔类型使用注意事项
JavaBean是一个标准,遵循标准的Bean是一个带有属性和getters/setters方法的Java类. JavaBean的定义很简单,但是还有有一些地方需要注意,例如Bean中含有boolea ...
- C#学习历程(九)[类的定义与声明]
一.C#中类的声明 在C#中必须先声明类,然后才能在程序中使用. 类的声明格式如下: [类的属性] [访问修饰符] class 类名称 [: 父类名]{ [成员修饰符] 类的成员变量或者成员函数 ...
- Javascript 基础学习(三)js 的原始类型和声明变量
java的基本数据类型一共有 byte short int long float double char boolean js中定义变量使用关键字 var js的原始类型(五个) String: 字符 ...
- salesforce零基础学习(八十七)Apex 中Picklist类型通过Control 字段值获取Dependent List 值
注:本篇解决方案内容实现转自:http://mysalesforceescapade.blogspot.com/2015/03/getting-dependent-picklist-values-fr ...
随机推荐
- 9.QT-标准对话框
Qt提供的可复用的标准对话框,全部继承自QDialog类,如下图所示: QMessageBox:信息对话框,用于显示信息.询问问题等: QFileDialog:文件对话框 QColorDialog:颜 ...
- React Native 系列(三) -- 项目结构介绍
前言 本系列是基于React Native版本号0.44.3写的,相信大家看了本系列前面两篇文章之后,对于React Native的代码应该能看懂一点点了吧.本篇文章将带着大家来认识一下React N ...
- SSH构造struts2项目
第一在pom.xml导入相应的包 (网上有很多导入多个包的教程,我缩减到一个了) <project xmlns="http://maven.apache.org/POM/4.0.0&q ...
- mongo数据删除和游标
数据删除 db.集合.remove(删除条件,是否只删除一个数据);默认删多条(false)true删除一条db.集合.remove({}) 删除所有元素但集合还在db.集合.drop() 删除集合 ...
- 漫谈Web缓存架构
计算机领域多处地方用到缓存,比如说为了缓解CPU和内存之间的速度不匹配问题,我们往往通过增加一级.二级.三级缓存,CPU先从缓存中取指令,如果取不到,再从内存中取,并更新缓存,同时,根据程序的局部性原 ...
- 剑指架构师系列-Redis安装与使用
1.安装Redis 我们在VMware中安装CentOS 64位系统后,在用户目录下下载安装Redis. 下载redis目前最稳定版本也是功能最完善,集群支持最好并加入了sentinel(哨兵-高可用 ...
- 苹果OS系统安装Xcode方法
打开Xcode系统,在app store 里面找到自己系统对应的可升级的Xcode版本进行下载,下载到本地后,设置存放Xcode存放的文件夹为共享文件夹. 在MAC OS共享文件夹里面找到Xcode安 ...
- Android开发技巧——设置系统状态栏颜色
开门见山,先来三张效果图: 然后我们再来讲如何实现以及如何快速地实现. 如何实现 实现设置系统状态栏颜色需要至少在Android 4.4.2(API 19)以上.这是因为,在这个版本以下,没有任何的A ...
- 20160222.CCPP体系详解(0032天)
程序片段(01):宽字符.c+字符串与内存四区.c 内容概要:宽窄字符 ///宽字符.c #include <stdio.h> #include <stdlib.h> #inc ...
- Dynamics CRM Trigger plugin for N:N relationships
博客原文:https://demystifyingcrm.wordpress.com/2014/12/17/trigger-plugin-for-nn-relationships-in-dynamic ...