前面搭起了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++中的类型和声明的更多相关文章

  1. [C++学习历程]基础部分 C++中的指针数组和结构

    作者:苏生米沿 本文地址:http://blog.csdn.net/sushengmiyan/article/details/19938177 一.指针 对学习C++来说,指针是一项重要内容,以前,教 ...

  2. [C++学习历程]基础部分 C++中的函数学习

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/20305815 作者:sushengmiyan 一.静态变量: 局部变量是线程到达定义的 ...

  3. [C++学习历程]基础部分 C++中的函数中的值参数、地址参数、引用参数实际例子

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/20406269 作者:sushengmiyan // sushengmiyanTest. ...

  4. [C#] 类型学习笔记一:CLR中的类型,装箱和拆箱

    在学习.NET的时候,因为一些疑问,让我打算把.NET的类型篇做一个总结.总结以三篇博文的形式呈现. 这篇博文,作为三篇博文的第一篇,主要探讨了.NET Framework中的基本类型,以及这些类型一 ...

  5. 学习Python3基础知识过程中总结

    print()中end==""的用法 例子:用Python3输出九九乘法表: for i in range(1,10): for j in range(1,i+1): s=i*j ...

  6. 【Java学习笔记之八】JavaBean中布尔类型使用注意事项

    JavaBean是一个标准,遵循标准的Bean是一个带有属性和getters/setters方法的Java类. JavaBean的定义很简单,但是还有有一些地方需要注意,例如Bean中含有boolea ...

  7. C#学习历程(九)[类的定义与声明]

    一.C#中类的声明 在C#中必须先声明类,然后才能在程序中使用. 类的声明格式如下: [类的属性] [访问修饰符] class 类名称 [: 父类名]{    [成员修饰符] 类的成员变量或者成员函数 ...

  8. Javascript 基础学习(三)js 的原始类型和声明变量

    java的基本数据类型一共有 byte short int long float double char boolean js中定义变量使用关键字 var js的原始类型(五个) String: 字符 ...

  9. salesforce零基础学习(八十七)Apex 中Picklist类型通过Control 字段值获取Dependent List 值

    注:本篇解决方案内容实现转自:http://mysalesforceescapade.blogspot.com/2015/03/getting-dependent-picklist-values-fr ...

随机推荐

  1. input中v-model和value不能同时调用时解决方案

    <input type="text" v-model="keyWord" value="请输入地名地址" > 当使用如上代码时, ...

  2. Java反射异常:java.lang.NoSuchFieldException

    版权声明:[分享也是一种提高]个人转载请在正文开头明显位置注明出处,未经作者同意禁止企业/组织转载,禁止私自更改原文,禁止用于商业目的. 今天用反射给对象赋值,有一个属性始终报错,主要错误信息如下: ...

  3. public、protected、default、private区别

    public.protected.default.private: 修饰符 本类 同包 子类 其他 public √ √ √ √ protected √ √ √ × default √ √ × × p ...

  4. Node.js 常用工具util

    util 是一个Node.js 核心模块,提供常用函数的集合,用于弥补核心JavaScript 的功能 过于精简的不足. util.inherits util.inherits(constructor ...

  5. k8s Kubernetes v1.10 最简易安装 shell

    k8s Kubernetes v1.10 最简易安装 shell # Master 单节点快速安装 # 最简单的安装shell,只为快速部署k8s测试环境 #环境centos 7.4 #1 初始化环境 ...

  6. CSDN博客投票活动开始了

    自己坚持写博客,一方面是为了将自己对知识点的理解做一个总结,另一方面也是因为自己看到了很多无私奉献分享自己知识的小伙伴们,因此自己也想像他们那样尽自己微薄之力把自己对某一知识点的理解分享给大家,或许算 ...

  7. iOS中的颜色

    最近在改Bug的时候,才注意到iOS 中的颜色竟然也大有文章,特来记录一下. 先说一下问题,因为某界面中有用xib实现的一个view,而这个view 只在UIColletionView的layout ...

  8. Linux-2.6.25 TCPIP函数调用大致流程

    插口层系统调用send    sys_send        sys_sendtosendto    sys_sendto        sock_sendmsgsendmsg    sys_send ...

  9. Dynamics CRM 安装CRM程序系统检查界面报未将对象引用设置到对象的实例的解决方法

    今天在安装CRM的时候,在系统检查阶段遇到了如下的错误,咋看之下直接是懵逼的 但不要着急,界面上有两个按钮,一个是详细信息,一个是帮助,详细信息不用看了就那一行字也看不出什么,咱们点下帮助看看,定位到 ...

  10. Spark:Spark 编程模型及快速入门

    http://blog.csdn.net/pipisorry/article/details/52366356 Spark编程模型 SparkContext类和SparkConf类 代码中初始化 我们 ...