zoukankan      html  css  js  c++  java
  • c++ 与 c 的区别

    C++一般被认为是C的超集合(Superset),但这并不严谨。大部分的C代码可以很轻易的在C++中正确编译,但仍有少数差异,导致某些有效的C代码在C++中失效,或者在C++中有不同的行为。 最常见的差异之一是,C允许从void*隐式转换到其它的指针类型,但C++不允许。下列是有效的C代码:

    从void*类型隐式转换为int*类型 int*i=malloc(sizeof(int)*5);

    但要使其在C和C++两者皆能运作,就需要使用显式转换:int*i=(int*)malloc(sizeof(int)*5);
    另一个常见的可移植问题是,C++定义了很多的新关键字,如new和,class它们在C程序中,是可以作为识别字(例:变量名)的。 在C标准(C99)中去除了一些不兼容之处,也支持了一些C++的特性,如//注解,以及在代码中混合声明。不过C99也纳入几个和C++冲突的新特性(如:可变长度数组、原生复数类型和复合逐字常数)。 若要混用C和C++的代码,则所有在C++中调用的C代码,必须放在 extern “C” { /* C代码 */ } 之内。

  • 相关阅读:
    Hive
    Hadoop简介与分布式安装
    Hadoop分布式文件系统HDFS
    HDFS的操作SHELL和API
    HDFS高级功能
    Yarn
    Hadoop的I/O操作
    Hadoop的RPC工作原理
    Mapreduce入门和优化方案
    MapReduce的工作机制
  • 原文地址:https://www.cnblogs.com/yangxingsha/p/11887764.html
Copyright © 2011-2022 走看看