成为C++高手之第一个程序

选一个利器

工欲善其事,必先利其器。选一个好用又流行的的编程工具很重要。软件编程工具现在都叫做IDE—–集成开发环境,能帮我们做很多事。有人愿意手动写makefile来自己管理源文件,很好,但是makefile对新手来说跟天书一样,很容易被打击得没兴趣了。makefile应该学吗?应该!但是,其学习时机应该是在完成一个比较复杂的项目之后,此时对项目的组织,源码管理、依赖关系等有了一定认识,再学makefile就顺风顺水了。所以我们现在还是老老实实选一个IDE吧。

支持跨平台的IDE有:QtCreator, Code::Blocks, Dev C++, eclipse CDT,Netbeans等。但是最好用的,以我多年的经验来说,首推QtCreator,我也不想多叨叨,你自己都对比一下就知道了,反正都是免费的。

QtCreator安装

QtCreator在三大平台上都是一样的界面。其下载地址是:

linux:
http://download.qt.io/official_releases/qt/5.6/5.6.0/qt-opensource-linux-x64-5.6.0.run

windows:
http://download.qt.io/official_releases/qt/5.6/5.6.0/qt-opensource-windows-x86-mingw492-5.6.0.exe

MacOSX:
http://download.qt.io/official_releases/qt/5.6/5.6.0/qt-opensource-mac-x64-clang-5.6.0.dmg

如何安装和利用它创建工程,我的视频教程“C语言跨平台入门”(地址:http://edu.csdn.net/course/detail/2057)中有详细的演示。但QtCreator在中文Windows下有个问题,控制台中文乱码。你创建的控制台程序输出中文时是乱码。由于QtCreator对源码文件的默认编码是UTF8,而控制台中的字符编码是按GB2312解释的,所以就乱了。要消除也很简单,把源码的编码改成GB2312就行了。或者不要输出中文字符。如下图:

这里写图片描述

改成GB2312或GB18030都可。GB是国标的缩写。

这里写图片描述

我视频中的程序在vs2013和vs2015中也完全可以编译运行。因为微软从vs2010开始就完全遵守C和C++标准了。你只需要在VS中建立C++工程,然后将h和c文件添加到vs工程中即可。

第一个程序

万仞高台,起于垒土。要成为C++高手,还得从C开始。要写程序,先建C工程,下图是已建好的QTCreator工程(不熟悉QtCreator的使用,请参考视频教程:http://edu.csdn.net/course/detail/2057):

这里写图片描述

可以看到简单的一个工程也已经有几个文件了。pro文件是工程文件,用于保存工程的信息,不要动它。Sources文件夹不是一个真正的文件夹,只是一个分组。main.c是源码文件。main.c文件不是空的,而是一个HelloWorld程序,这是IDE为我们做的,你可以把文件删掉自己重新加,效果也是一样。这个程序就做了一件事:输出一段文本:Hello world。但从这个程序中可以看到一个程序的必备要素:

  • 至少一个C文件。
  • C文件内至少有个main函数。

main.c中的内容:

//包含这个头文件是为了使用函数printf ,否则不用包含这个头文件
#include <stdio.h>
/*
 入口函数
 int是返回值类型
 小括号里放参数,void表示没有参数,可以把void省略
 */
int main(void)
{
    //向控制台输出一条文本
    printf("Hello World!\n");
    //反回0表示程序成功执行
    return 0;
}

核心语法:

  • 注释是给人看的,编译器不把它们当代码处理。单行注释://,多行注释:/**/ 。
  • 一行语句结束,要有分号。
  • include句叫包含头文件。包含头文件是为了使用那个头文件中声明的函数或变量。
  • main是函数,大括号内就是函数的代码。代码就是计算机能执行的指令。
  • 输出文本是printf函数干的,printf就是stdio.h文件中的函数,所以必须在使用printf之前包含头文件。
  • 要使用一个函数的功能必须调用这个函数,比如printf句。
  • 函数可以被调用任意次,比如你可以调用10次printf。
  • 调用函数的写法是有一定规则的,首先写上函数名,因为没有函数名就不知道要执行哪个函数了;函数名之后紧跟小括号。小括号内叫参数,这里传什么参数,printf就输出什么。

上一篇:成为C++高手之如何入门
下一篇:成为C++高手之函数

猜你喜欢

转载自blog.csdn.net/nkmnkm/article/details/51311771