C++程序基础(1):代码框架与输出语句

C++程序基础(1):代码框架与输出语句

代码框架

在你学会一个语句之后,并不能直接把他放进IDE(集成开发环境)中尝试,否则就会有如下报错:

cout << "a" << endl;

TEstudio.png

注:cout是C++的输出语句

为什么呢?

头文件

因为cout(这里举例使用的cout,实际上别的语句也会有这个问题)是被定义在iostream的一个实例。所以当你没有声明iostream的内容时,编译器就蒙了:“a cout是啥东西,我不到啊”。但是当你成功的把iostream定义后,就可以成功运行了……吗?

插一嘴:编译器编译时,会将iostream这一类的头文件展开,具体我们后面再讲

#include <iostream>

cout << "a" << endl; 

出现了与上次同样的报错。

为什么呢?

命名空间

因为C++把所有标准库中的东西全部装在了std(标准的英文缩写)这个命名空间中。这里提到了C++的新概念——命名空间。

关于命名空间,不妨先看看下面这张图

TEstudio.png

假设你现在有两个购物包,一个叫A,一个叫B,两个包里都有且只有香皂、水瓶、电池,该如何分辨他们呢?

在之前的C语言里,我们只能给这相同的东西赋予不同的名字,比如包A里的香皂就叫香皂,包B里的香皂叫香皂2等。

但是在C++中,引入了命名空间这个概念。命名空间就相当于一个袋子,把东西套起来,分辨时只要说哪个包里的什么东西就好了,比如:包A里的香皂,包B里的水瓶等。代码更加易懂,不容易出错。

当然在代码里你要用命名空间的话,要这么写:

<命名空间名>::<成员名>

比如cout:

std::cout

但是那些原本标准库的归宿呢?就在std里。

然而在初学者写代码时可能会忘记使用命名空间,所以这个语句诞生了——

using namespace std;

直接翻译,意思是“使用命名空间std”

那么他的意思就是在全局使用命名空间std。回到上面那个例子,如果你在代码前面写了using namespace A的话,调用A的时候可以直接写香皂、水瓶、电池,省略前面的A::,但是调用B里的东西是还是需要写完整的代码。

那为什么我们要写这个使用std命名空间呢?因为新手的大部分要用的东西都是在标准库里的,在std命名空间里,像cin,cout等等。

但当你加上了命名空间后:

#include <iostream>
using namespace std;
cout << "a" << endl; 

还是会有像之前一样的报错。

为什么呢?

函数

我们知道,C++的代码是从上往下,依次执行的。这里我们又要提到一个概念——函数。

编程的函数并不是数学上的函数,而是一个“饼干工厂”,你给它材料,他就能做出饼干。函数正是如此。函数实际写下来是这样的。

int function(int a, int b) {
    return a + b;
}

我们今天要讲的主题并不是自定义函数(上面这种),而是主函数。

主函数其实就是告诉编译器:“从这开始噢,别跑偏了”,相当于程序的入口。有了这个入口,我们就能开心的写代码了。

主函数这么写

int main() {
    //代码
}

最后,我们的程序变成了这样:

#include <iostream>
using namespace std;

int main() {
	cout << "a" << endl; 
}

好习惯:函数、命名空间中间空一行,代码块(用“{}”裹起来的)要缩进

最后,加上一个return 0

至于这东西的作用,其实没什么作用可以让程序返回0,好让主函数结束运行。

那有的人就要说了:“啊主函数运行完了不就结束了吗?”

现在的顺序结构是这样的,但是在学到分支的时候,你会恍然大悟的。

输出语句

在C++里进行标准输出时,我们通常使用cout语句。例如最简单的“Hello,world!”

cout << "Hello,world";

不难发现,cout后面一般都会有两个小于号,这是流运算符。cout语句可以有任意个流运算符。

与python不同,cout语句后不会自动加上换行符。也就是说,上面的代码可以写成这样。

cout << "Hello" << ",world";

也可以写成这样

cout << "Hello";
cout << ",world";

其实,后面的内容不仅可以是字符串,还可以是数字、变量、数组、函数名。

例:输出“Hello,world!”,但是是变量。

string s = "Hello,world!"
cout << s << endl;

例2:输出“Hello,world!”,但是是字符数组。

字符数组:C语言里的字符串,在C++中则是string,使用字符数组时多定义至少1个字符

char s[12] = {"Hello,world!"};
cout << s << endl;

例3:输出3

cout << 3 << endl;

例4:输出3,但是是变量

int x = 3;
cout << x << endl;

在最后加换行符(endl, end line)看题目要求。

cout的掌握要以练习为主。

总结

我们一个程序的框架如下:

#include <iostream>
using namespace std;

int main() {
	
	return 0;
}

这个框架一定要熟练!这是以后我们所有的程序的基础。

我们下期再见。

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 《C 程序设计:原理与实践(基础篇)pdf》是一本介绍C程序设计原理与实践的电子书,篇幅为300字。 本书着重介绍了C程序设计的基础知识和实践技巧。首先,书中详细介绍了C语言的基本概念、语法规则和编程思想,包括数据类型、运算符、控制语句、函数等。读者通过学习这些内容,可以了解C语言的基本框架和编程范式,为后续的程序设计打下坚实基础。 同时,本书还通过丰富的实例和案例,帮助读者理解C程序设计的实践技巧。例如,介绍了程序的模块化设计思想,如何设计函数和文件结构,以及常见的程序调试和错误处理方法。这些内容对于初学者来说非常有帮助,可以提高编写程序的效率和质量。 此外,本书还详细介绍了C语言的高级特性和应用,如指针、动态内存管理、文件操作等。这些内容对于进一步提高编程能力和解决实际问题非常重要。 综上所述,《C 程序设计:原理与实践(基础篇)pdf》是一本系统、全面介绍C程序设计原理和实践的电子书。通过学习本书,读者可以全面掌握C语言的基本知识和实践技巧,为进一步学习和应用C语言打下坚实基础。 ### 回答2: 《C程序设计:原理与实践(基础篇)pdf》是一本关于C程序设计的教材,旨在帮助读者掌握C语言基础知识和编程实践技巧。该教材以C语言基础,通过详细的例子和实践项目,引导读者逐步理解和运用C语言编程。 本教材主要包括以下几个方面的内容: 1. 基本概念与语法:介绍C语言的基本数据类型、运算符、控制流语句等基础知识,并通过多个实例帮助读者熟悉C语言的语法和逻辑。同时,还介绍了一些常用的C库函数,如输入输出函数等。 2. 函数与模块化编程:重点介绍了函数的定义、调用和参数传递等概念,通过实例演示了如何使用函数来解决实际问题。同时,还介绍了如何将程序模块化,以便提高代码的可读性和可维护性。 3. 数组与指针:详细讲解了C语言中的数组和指针的概念及其应用。通过实例和练习,引导读者熟练掌握数组和指针的使用方法,并了解它们在C语言中的重要性。 4. 结构体与文件操作:介绍了结构体的定义和使用,以及如何通过文件操作来实现数据的读写。这一部分内容帮助读者了解如何处理结构化数据,并掌握文件操作的基本方法。 通过学习《C程序设计:原理与实践(基础篇)pdf》,读者可以获得系统而全面的C语言编程知识,培养编程思维和解决问题的能力。无论是初学者还是有一定编程基础的读者,都能从中受益,并逐步提升自己的编程能力。该教材的特点是理论与实践并重,通过大量的实例和练习,帮助读者将理论知识运用到实际编程中,从而更好地理解和掌握C语言

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值