zoukankan      html  css  js  c++  java
  • c++基础第一篇

    前言:我是从c和c++对比的角度来讲解c++的基础知识。

    (1)c++格式如下:

    #include <iostream>  //标准输入输出头文件
    using namespace std;  //标准输入输出所在命名空间
    
    int main(int argc,char *argv[])
    {
       cout<<"hello world"<<endl;  //cout为标准输出,endl是换行符, 在c中相当于
    ,其中标准输入为cin>>
       return 0;
    }

    (2)c++是在c的基础上发展起来的那么我们当然可以使用c中的头文件了,一般在c头文件前面加个c就可以了,比如是c中的标准输入输出可以这么写include <cstdio>,后面的.h去掉,当然这是不是标准的写法,c++中标准的写法格式如下:

    extern "C"
    {
       include <stdio.h>
       include <string.h>
       ...........
    }

    (3)定义指针

    c环境下定义指针

    char *p = NULL; //定义一个char型的指针,指针指向NULL
    

    c++环境下定义指针

    char p = new char;
    

    释放的时候时候也不同

    c环境下释放

    free p;
    

    c++环境下释放

    delete p;
    

    (4)定义数组

    c环境下

    char buffer[10];  //定义一个char型的数组,里面包含10个元素
    

    c++环境

    char buffer = new char[10];
    

    这里需要注意的是,c中定义的数组不需要释放,而c++中是要释放的,释放的格式如下

    delete []buffer; //释放的时候不需要指明释放多少个字节,仅需要在数组名前加[]就可以了
    

    (5)命名空间

    命名空间格式:

    namespace 命名空间名字
    {
        int data ;  //空间中的内容
        ...........
    };

    如果想要使用空间中的内容可以这么写

    命名空间名字::data;  //::为所属符,说明这个变量属于某个命名空间

    如果嫌麻烦,那就在前面加上下面这句话,在使用空间的内容时就可以不写所属符了

    using namespace 命名空间名字;

     (6)引用

    引用的格式:

    数据类型  &引用名  =   变量名(引用名前的数据类型一定要跟变量的类型一致)

    int a =  100;
    int &b = a;  //b是a的引用(或者说b是a的别名)

    注意:b是a的引用的时候,b的值改变,a也会跟着改变,或者可以看成b是一个指向a中值的指针,这样子可能更容易接受。

    比如:

    #include <iostream>
    
    using namespace std;
    
    int main()
    {
        int a = 100;
        int &b = a;
        cout<<"b:"<<b<<endl;
        b = 50;
        cout<<"a:"<<a<<endl;
        return 0;
    }

    输出如下:

    b:100
    a:50
    

    这里还需要注意的是,如果变量是const修饰的, 那么引用必须用const修饰

    const int n=100;
    const int &m=n;

     

     

     

  • 相关阅读:
    制作Elasticsearch的Parcel包和csd文件
    zabbix监控安装1
    linux官方源
    Nginx优化详解
    k8s-kubectl命令大全
    详解keepalived配置和使用
    keepalived工作原理和配置说明
    linux 内核参数优化
    批量更新软连接脚本
    Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)
  • 原文地址:https://www.cnblogs.com/wurenzhong/p/8416096.html
Copyright © 2011-2022 走看看