C++快速入门
--这个月的第一篇博客,献给我最爱的C++程序设计语言!
一、编写简单的C++程序
//main函数是唯一一个被操作系统显式调用的函数。 int main() { /* *该返回值作为状态指示器,需要返回给操作系统! *以echo $ 命令可以查看该返回值 *通常非零返回值表示有错误出现,由操作系统定义 */ return 0; }
二、初窥输入/输出
1、标准输入:cin
2、标准输出:cout
3、cerr、clog
【当写到cout、cerr与clog时,输出写至同一窗口!但是利用重定向可以将这些流与所选择的文件联系起来】
#include//iostream库定义了接受各种内置类型的输入/输出操作符版本 int main() { /* *当操作符是输入(>>)、输出(<<)操作符时, *其结果是左操作数, *也就是说:输入/输出操作返回的值是输入/输出流本身 */ //将"..."的内容写入到cout对象中 std::cout << "Enter two numbers:" << std::endl; int v1,v2; //从istream操作数读入数据并保存在右操作数中 std::cin >> v1 >> v2; //endl具有:1、输出换行 2、刷新与设备相关联的缓冲区 的作用 std::cout << "The sum of " << v1 << " and " << v2 << " is " << v1 + v2 << std::endl; return 0; }
三、关于注释
1、注释用于:
概括算法、确认变量的用途、阐明难以理解的代码段
2、规则
1)多行注释:使用注释对/**/,同时,在注释的每一行以星号开始,指明整个范围是多行注释的一部分。
2)单行注释:使用//
3)通常最好是将一个注释块放在所解释代码的上方!
4)注释对不可嵌套
是否正确:
#include/* *comment pairs/* */ cannot nes. *"cannot nest" is considered source code. *as is the rest of the program */ int main() { return 0; } 1、std::cout << "/*"; //输出”/*” 2、std::cout << "*/"; //输出”*/” 3、std::cout << /* "*/" */; //编译出错
四、控制结构
1、关于C++程序的缩排和格式:
一旦你选定了某种风格,就要始终如一地使用他!
2、再谈编译
编译器可以检查出的错误:
1)语法错误
2)类型错误
3)声明错误
编译器无法检测出的错误:
逻辑错误,该类错误一般需要单步跟踪等进行调试,工具如GDB等。
3、读入未知数目的输入
如果定义了变量intval;并执行语句while(std::cin >> val){...},会为判断条件,先执行输入操作,如果遇到文件结束符(end-of-file)或遇到无效的输入时,如读取了一个不是整数的值,则istream对象是无效的。处于无效状态的istream对象将导致条件失败。
4、从键盘输入文件结束符
Windows:Ctrl+z UNIX/Linux/MacOS:Ctrl+D【在Ubuntu下有时候需要连摁两下】
P14.习题
//题1.10 #includeint main() { int sum = 0; int val = 50; while (val <= 100) { sum += val; ++ val; } std::cout << sum << std::endl; return 0; }
//题1.11 #includeint main() { for (int i = 10;i >= 0; --i) { std::cout << i << std::endl; } return 0; }
//题1.12编译并认识下列错误 #includeint main( { std::cout << "read" << std::endl: std::cout << update << std::endl; std::cout << "write" << std::endl; return 0 }