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;

 

 

 

原文地址:https://www.cnblogs.com/wurenzhong/p/8416096.html