文档章节

C与C++的两点不同

to_be_better
 to_be_better
发布于 2014/12/20 22:25
字数 250
阅读 15
收藏 0

1  在C 语言中是没有布尔类型

在以 .c 为后缀的文件中,是不允许有bool数据类型的,但是在C++中是存在的。

一种解决方案为 :

#define TRUE  1

#define TRUE  0

typedef  int BOOl;

以这种方式来模拟使用 bool类型的变量

2  定义二维数组

我们都知道有二维数组,下面请看这种情况:

char [3][2] = {'a'};

这在C 和C++是都正确的。

再看一种情况:

char [3][] = {'a'};

我们通常被告知这种情况也是正确的,即若二位数组被初始化的话,则其第二个维度可以省略,但是在以.c为后缀的文件中这是会编译出错的(vs2005 和gcc均回报错),在.cpp中则是没有问题的

最后忽然想到,莫要纠缠于语法,这样会误入歧途,但是这些东西如果忽然碰到的话还是记下来会好一些。



© 著作权归作者所有

to_be_better

to_be_better

粉丝 7
博文 64
码字总数 42038
作品 0
郑州
程序员
私信 提问
Visual C/C++编译器使用心得

简介 我将在此文章中探索一点 Visual C/C++ 编译器背后的细节。个别编译器的开关选项是怎样影响代码生成的。 背景 在此我假设读者熟悉 Visual C/C++ 编译器的基础。同时本文的读者也不怕使用...

彭博
2012/04/10
1K
2
关于两年多来,一些喜闻乐见的个人吐槽

由于公司是国企,坚守一个月的工作交接期.所以我每天都得背着自己的ThinkPad T430i来上班,自己打开一边看一边写博客. 由于今天突然感觉特别的疲倦,于是想吐槽一下(这跟酒后乱性貌似有点一样)...

fzyz_sb
2015/03/10
4.9K
29
LLVM 与 Clang 及其关系

随着 Android P 的逐步应用,越来越多的客户要求编译库时用 libc++ 来代替 libstdc++。libc++ 和 libstdc++ 这两个库有关系呢?它们两个都是 C++ 标准库,libc++ 是针对 Clang 编译器特别重写...

robslove
01/17
163
0
VS 2012 的 C++ 程序将支持 Windows XP

此前发布的 VS 2012 编译的 C++ 程序一直不支持 Windows XP。在线反馈也有好多开发者对此有意见。最近微软态度有不少转变,不仅宣布 VS 2012 Express 可以开发桌面程序,也听取了这项关于让 ...

苗哥
2012/07/01
4.1K
2
关于中文分词的代码逻辑、现有技术的讨论

个人最近需要使用中文分词,学了两天,了解的不多。先来抛砖引玉,希望学得对大家有帮助,也希望学到对自己有用的。将从以下3个地方展开讨论。 1、概念明确:中文分词是什么?做了什么? 2、...

慕长歌
2017/05/18
272
0

没有更多内容

加载失败,请刷新页面

加载更多

PHP计算两个经纬度地点之间的距离

/** * 求两个已知经纬度之间的距离,单位为米 * * @param lng1 $ ,lng2 经度 * @param lat1 $ ,lat2 纬度 * @return float 距离,单位米 * @author www.Alixixi.com */function get...

子枫Eric
8分钟前
9
0
Linux—day 4

ch2 需要掌握的命令 (1)cat -n 1.txt (2)more 1.txt (3)head -n 15 initial-setup-ks.cfg (4)tail -n 17 initial-setup-ks.cfg;tail -f initial-setup-ks.cfg (5)cat -n anaconda-ks.c......

呵呵暖茶
21分钟前
8
0
【Kubernetes社区之路】我的PR被抢了

2019年11月的某天,我无意间发现一个PR作者在自己的PR中抱怨自己的PR没被合入,而另一个比自己提交晚且内容几乎一样的PR则被合入了。 字里行间透露些许伤感外加无奈: 作为一名开源爱好者,我...

恋恋美食
28分钟前
9
0
阻塞队列

对于许多线程问题, 可以通过使用一个或多个队列以优雅且安全的方式将其形式化。生产者线程向队列插人元素, 消费者线程则取出它们。 使用队列, 可以安全地从一个线程向另 一个线程传递数据...

ytuan996
29分钟前
3
0
mysql docker 配置

安装   主机上的mysql服务是基于docker安装的,具体安装脚本如下: docker run --detach \--restart always \--publish 3306:3306 --name mysql \--volume /data/mysql/logs:/logs \-...

qwfys
33分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部