C++学习
第2章 开始学习C++
2.1 进入C++
会使用C++工具cout生成字符输出。C++对大小写敏感,也就是说需要区分大小写。文件拓展名cpp是一种C++程序的常用方式。
//myfirse cpp -- displays a message
#include <iostream> //预处理器编译指令
int main() //函数头
{ //函数体
using namespace std; //编译指令,实现库中定义函数,防止函数名重复;使std内定义的所有标识符曝光(当全局变量使用)
cout << "Come up and C++ me some time.";
cout << end1;
cout <<"You won't regret it!"<<end1;
return 0; //结束main语句的
啊吧啊吧啊吧啊吧啊吧啊吧…
关于C语言的输入输出
使用cout函数
2.1.1 main()函数
int main()函数头
花括号中间叫函数体
厘清函数定义 函数头 函数名 函数体 结束函数
2.1.3 C++预处理器和iostream文件
#include <iostream>
int main()
using namespace std;
使用cin和cout进行输入和输出的程序必须包含文件iostream
2.1.4 头文件名
像iostream这样的文件叫做包含文件
2.1.5 名称空间
如果使用iostream而不是使用iostream.h这个头文件名,则应使用下面这个名称编译空间指令来使iostream中的定义对程序使用:
using namespace std;
名称空间支持是一项C++的特性
2.1.6 使用cout进行C++输出
#include <iostream>
int main()
{
using namespace std;
cout << "hello world!\n\(@^0^@)/";
return 0;
}
①控制符endl
重起一行。在输出流中插入endl将导致屏幕光标移到下一行开头。即控制符。和cout一样endl也是在头文件中iostream中定义的,且位于名称空间std中。
②换行符
“\n”
cout << "Pluto is a dwarf planet.\n";
cout << "Pluto is a dwarf planet."<< endl
如果要生成一个空行
cout << "\n"
cout << endl
总之,换行符是一种被称为“转义序列”的按键组合。
2.1.7 C++源代码的格式化
在C++中,通常可以在能够使用回车的地方使空格。
不能在元素之间使用空格,制表符,回车等元素
1.源代码中的标记与空白
2.2 C++语句
#include <iostream>
int main()
{
using namespace std;
int carrots;
carrots = 25;
cout << "I have";
cout << carrots;
cout << "carrots.";
cout << endl;
cout << carrots-1;
cout << "Crunch,crunch. Now I have" << carrots << "carrots." <<endl;
return 0;
}
2.2.2 赋值语句
赋值从右往左进行。
2.2.3 cout的新花样
cout << carrots
2.3.1 使用cin
1.cin简介
cin是C++编程语言中的标准输入流对象,即istream类的对象。cin主要用于从标准输入读取数据,这里的标准输入,指的是终端的键盘。此外,cout是流的对象,即ostream类的对象,cerr是标准错误输出流的对象,也是ostream 类的对象。这里的标准输出指的是终端键盘,标准错误输出指的是终端的屏幕。
在理解cin功能时,不得不提标准输入缓冲区。当我们从键盘输入字符串的时候需要敲一下回车键才能够将这个字符串送入到缓冲区中,那么敲入的这个回车键(\r)会被转换为一个换行符\n,这个换行符\n也会被存储在cin的缓冲区中并且被当成一个字符来计算!比如我们在键盘上敲下了123456这个字符串,然后敲一下回车键(\r)将这个字符串送入了缓冲区中,那么此时缓冲区中的字节个数是7 ,而不是6。
cin读取数据也是从缓冲区中获取数据,缓冲区为空时,cin的成员函数会阻塞等待数据的到来,一旦缓冲区中有数据,就触发cin的成员函数去读取数据。
cin的常用读取方法
使用cin从标准输入读取数据时,通常用到的方法有cin>>,cin.get,cin.getline。
2.1cin>>的用法
cin可以连续从键盘读取想要的数据,以空格、tab或换行作为分隔符。实例程序如下。
函数
1.函数格式
type functionname(argumentlist)
{
statements
}
2.函数头
void simon(int n)
开头的void表示Simon()并没有返回值
函数的变体:
1.double power(double, double);
answer=pow(5.0,8.0)
2.int rand(void)
不接受任何参数,并返回一个随机数
My guess= rand();
3.void bucks(double)
无返回值
bucks(123.4)
2.4.4 用户定义的有返回值的函数
例子
2.4.4用户定义的有返回值的函数
int stonetolb(int);
这是在主函数里面的
自定义函数部分
int stonetolb(int sts)
{
return * sts;
}
或者
int stonetolb(int sts)
{
int pounds= 14* sts;
return pounds;
}
函数stonetolb()短小、简单,但包含了全部的函数特性。
1.有函数头和函数体
2.接受一个参数
3.有一个返回值
4.需要一个原型