C与C++的区别

1.C和C++是两门编程语言
    C++完全兼容C

    C++ ==  C + 面向对象 + C++标准库

2.输入输出 和 动态内存分配
    C++中可以直接使用C的输入输出和动态内存分配
    C++中也有它自己的输入输出和动态内存分配

例如:c的动态内存分配

int *p=(int*)malloc(4);          

*p=4;

printf("p:%d",*p);

free(p);

c++的动态内存分配

int pp=new int;

*pp=8;

coout<<*pp<<endl;

delete p;

3. C++的头文件和C的不一样
C++的头文件 #include 的时候    不要.h   iostream.h  就是直接#include <iostream>  
C++中使用C的头文件:
    方式1     有.h      例如 #include <stdio.h>
    方式2     没有.h   例如  #include <cstdio>

4.名字空间

C++标准自带的名字空间 std
        使用方式一:  临时使用名字空间中的标识符
            名字空间名::成员
            std::cout
        使用方式二: 暴露名字空间中一个标识符
            using 名字空间名::成员;

(建议在大型项目时使用方式一和方式二)
            using std::endl;
        使用方式三:直接暴露整个名字空间  名字空间中的所有标识符都暴露了
            using namespace 名字空间名;
            using namespace std;

制作名字空间
        namespace 名字空间名{
            标识符声明
        };

        namespace name1{
            int n;
            char name[20];
            struct Student{
                char name[20];
                int age;
                double score;
            };
        };

调用name的n

name::n;

5. 函数重载:
    函数名相同,参数列表不同,函数不同
    参数列表不同:
        1. 参数个数不同
        2. 参数类型不同
        3. 参数顺序不同
            //参数顺序的例子
            void f1(int a, char c){ cout << "f1" << endl; }
            void f1(char c, int a){ cout << "f2" << endl; }

6. 函数的缺省参数
    在声明的时候给形参赋值
    注意:
        1. 声明的时候写  = 值 定义的时候不要写

(在调用的时候如果不写默认给你传)
        2. 带缺省值的形参  从右往左
        3. 注意函数重载时候的二义性问题(看实参)
            见代码

例子:

void print(int *arr,int len);

void print(int *arr);

void print(arr);(具有二义性不能调用)

7. C中没有bool类型
    C++中有bool类型  
        bool在C中是个标识符
        bool在C++中是个关键字

 


 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值