C到C++

字节映星客
• 阅读 777

1. 新类型 布尔 引用

整型         int       long
浮点型       float     double
字符类型     char    
布尔         bool

bool 存放真(1)和假(0)的类型 大小1个字节 可以存放true    false
指针 存放地址的变量 可以间接修改变量的值 
定义的时候可以不用赋值 使用的时候 如果不赋值不可以解引用 使用的是指向的变量
引用 变量的别名 使用引用和使用变量是一样的 
定义的时候必须绑定一个变量 绑定之后不可以让引用指向别的变量

2. 函数 内联 重载 缺省

2.1 内联inline

    宏定义#define 不带参数 可以替换简单的函数 不能替换复杂函数 先替换再计算
    没有函数的跳转时间 增长代码长度 节约运行时间长度 耗费内存 建议使用内联函数替换带参宏
    区别:
    1.内联函数 参数有类型(更安全) 带参宏没有类型
    2.带参宏 先替换再计算 需要考虑优先级问题
      内联函数 先计算 然后结果带进去 不需要考虑优先级问题
    内联inline关键字 放到函数前面 建议这个函数用内联的方式编译
    `inline void(int& a)//函数面前加上inline关键字称之为内联函数
    {
        a = 2;
    }` 

2.2 重载 C++允许函数重名

    函数定义 允许重名
    函数返回值类型/参数名字不一样不构成重载 主要看参数
    函数参数个数不一样 构成重载
    void fun(int a);
    int fun(int aa, int bb);
    
    函数参数类型不一样 构成重载
    void fun(int a);
    int fun(double b);

2.3 缺省 给函数形参一个默认值

    调用函数的时候 有默认值的形参可以不用传递参数 声明/定义的时候赋值
    缺省必须从右往左
    void fun_1(int a, int b, int c = 1);
    fun_1(3, 2);
    void fun_2(int aa, int bb = 12, int cc = 11);
    fun_2(13);
    
    缺省和重载 引发一个二义性问题 两个函数构成重载 但是调用的时候两个函数都可以匹配
    void fun_3(int a, int b = 2);
    void fun_3(int a, int b = 4, int c = 6);
    fun_3(1);//此时都可以调用

3.C++申请内存 new delete

C语言 申请堆内存 malloc 释放 free 头文件 stdlib.h
int* p = (int*)malloc(sizeof(int)*20);//申请内存
free(p);//释放内存

C++申请内存 使用new 释放内存 使用delete
int* p = new int;//申请一个int;
delete p;//释放一个
int* pp = new int[20];//申请20个 new 类型[个数]
delete[] pp;//释放多个

申请内存的时候给他赋初值
int* p = new int(20);//()表示初值
int* pp = new int[20]{1, 2, 3. 4. 5};//赋予多个初值

4.C++的输入输出方式

stdio.h C语言输入输出头文件 io input输入 output输出 standard标准
iostream io 输入输出 stream流
count<<输出的内容<<endl;//endl表示换行 输出数据
cin>>变量;//输入数据
点赞
收藏
评论区
推荐文章
Easter79 Easter79
3年前
typeScript数据类型
//布尔类型letisDone:booleanfalse;//数字类型所有数字都是浮点数numberletdecLiteral:number6;lethexLiteral:number0xf00d;letbinaryLiteral:number0b101
梦想橡皮擦 梦想橡皮擦
4年前
2. 无门槛学会数据类型与输入、输出函数,滚雪球学 Python
学习一门语言应该是一件充满乐趣的事情,为什么要把它变难呢?二、Python基本数据类型与输入、输出函数2.1基本数据类型对于任何一门语言都存在一些基本类型,Python也不例外,只不过数据类型在Python中要远远比其他语言简单,基本分为以下几种。1.数值数据类型,常见的是整数和浮点数2.布尔值数据类型,就是常说的真和假
Wesley13 Wesley13
3年前
Java中的基本数据类型和引用数据类型的区别
一、前言众所周知Java是一种强类型语言,在Java语言中,Java的数据类型一共分为两大类,分别为基本数据类型和引用数据类型,其中基本数据类型细分小类可分为整数类型、浮点类型、字符类型、布尔类型这四小类。二、基本数据类型和引用数据类型1\.基本数据类型只有
Wesley13 Wesley13
3年前
2.C++中的bool类型,三目运算符,引用
本章主要内容:1)bool类型2)三目运算符3)引用1.布尔型bool在C中,bool类型只有true(非0)和flase(0)两个值,且bool类型只占用了一个字节.例如:include<stdio.h
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Wesley13 Wesley13
3年前
JAVA基本类型和引用类型
一、基本数据类型java中一共分为8种基本数据类型:byte、short、int、long、float、double、char、boolean,其中byte、short、int、long是整型。float、double是浮点型,char是字符型,boolean是布尔型。二、引用类型j
Wesley13 Wesley13
3年前
Java基础(二)数据类型
  数据类型主要分为基本类型和引用类型两大类。  一、基本类型  1.基本类型又分为数值类型和boolean类型,  (1)数值类型包括浮点数类型、整数类型和字符类型  整型                                          浮点型(初始化时需要加f或d)  字符类型  byte    
小万哥 小万哥
1年前
C 语言中布尔值的用法和案例解析
C语言中的布尔值在编程中,您经常需要一种只能有两个值的数据类型,例如:是/否开/关真/假为此,C语言有一个bool数据类型,称为布尔值。布尔变量在C语言中,bool类型不是内置数据类型,例如int或char它是在C99中引入的,您必须导入以下头文件才能使用
小万哥 小万哥
1年前
C# 布尔值和条件语句:入门指南和实用示例
C布尔值在编程中,通常需要一个只能有两个值之一的数据类型,比如:是/否开/关真/假为此,C有一个bool数据类型,可以取true或false的值。布尔值使用bool关键字声明布尔类型,只能取true或false的值:示例:csharpboolisCShar
小万哥 小万哥
1年前
XML Schema 字符串数据类型及约束详解
XML中的字符串数据类型表示字符序列,包括换行、回车和制表符。处理器不修改值。normalizedString去除这些特殊字符,token则进一步移除前导和尾随空格及多余空格。字符串类型可使用枚举、长度等限制。date和dateTime数据类型表示日期和时间,duration表示时间间隔。数值类型如decimal和integer用于数值,布尔型表示真或假。还有如base64Binary和anyURI等其他数据类型。元素和数据类型可以有各种约束,如最大值、最小值和模式匹配。
小万哥 小万哥
1年前
Kotlin 数据类型详解:数字、字符、布尔值与类型转换指南
Kotlin中变量类型由值决定,如Int、Double、Char、Boolean、String。通常可省略类型声明,但有时需指定。数字类型分整数(Byte,Short,Int,Long)和浮点(Float,Double),默认整数为Int,浮点为Double。布尔值是true或false,Char用单引号,字符串用双引号。数组和类型转换将在后续讨论,转换需用特定函数。