1.scanf的输入格式,空格、TAB和回车符都是无关紧要,所以按Enter键并不意味着输入结束。

告诉程序输入结束的方式:

在windows下,输入完毕后先按Enter键,再按Ctrl+Z键,最后再按Enter键。

在linux下,输入完毕后按Ctrl+D键

2.gcc 编译选项

-Wall指出警告

-ansi 判断是否和ANSI冲突

-pedantic 比ansi更加严格

-lm 链接数学库, C++编译器会自动链接

-DDEBUG 编译时定义符号DEBUG,可以换成其它,如-DLOCAL将定义符号LOCAL

3.两种使用文件输入输出的方法:重定向和fopen:

重定向示例:

freopen("data.in","r",stdin);
freopen("data.out","w",stdout);

fopen示例:

#include<stdio.h>
FILE *fin, *fout;
fin = fopen("data.in", "rb");
fout = fopen("data.out", "wb");
fscanf(fin, "%d", &x);
fprintf(fout, "%d", x);
fclose(fin);
fclose(fout);

4.使用printf和scanf输入输出long long在linux中gcc很统一的用%lld;在windows中,MinGW的gcc和VC6都需要用%I64d,但VS2008却是用%lld

5.可以使用#define A B程序中的A全部替换成B

6.比较大的数组应尽量声明在main函数外

7.使用fgetc(fin)可以从打开的文件fin中读取一个字符。一般情况下应当检查它不是EOF后再转换成char值。

从标准输入输出取一个字符用getchar,相当于fgetc(stdin);

8.fgets(buf, MAXN, fin)将读取完整的一行放在字符数组buf中,应当保证buf足够存放下文件的一行内容。除了在文件结束前没有遇到'\n'这种特殊情况外,buf总是以‘\n’结尾。当一个字符都没有读到时,fgets返回NULL。

fgets相比gets更安全,有MAXN限制。

getline: istream& getline(istream &is, string &str, char delim)

      istream& getline(istream &is, string &str)这种情况delim为换行

    getline会读取delim并丢弃。

  例如getline(cin, name,'\n');

istream::getline :istream& getline(char *s, streamsize n) 这种情况delim为换行

         istream& getline(char *s, streamsize n, char delim)

   例如cin.getline(s,100,'\n');

9.头文件ctype.h中定义的isalpha,isdigit,isprint等工具可以用来判断字符的属性,而toupper、tolower等工具可以用来转换大小写。

10.string.c_str()返回的内容是只读的。

11.使用assert.h中的assert宏来限制非法函数调用

assert(x>);

当x≤0时代码将异常终止。

12.gdb用bt(backtrace)命令打印所有栈帧信息,up命令选择上一个栈帧。

C++语言学习——LRJ入门经典笔记的更多相关文章

  1. LRJ入门经典-0907万圣节的小L306

    原题 LRJ入门经典-0907万圣节的小L306 难度级别:B: 运行时间限制:1000ms: 运行空间限制:256000KB: 代码长度限制:2000000B 试题描述 今天是万圣节,小L同学开始了 ...

  2. LRJ入门经典-0906最短公共父串305

    原题 LRJ入门经典-0906最短公共父串305 难度级别:B: 运行时间限制:1000ms: 运行空间限制:256000KB: 代码长度限制:2000000B 试题描述 给定字符串A和字符串B,要求 ...

  3. LRJ入门经典-0905邮票和信封305

    原题 LRJ入门经典-0905邮票和信封305 难度级别:B: 运行时间限制:1000ms: 运行空间限制:256000KB: 代码长度限制:2000000B 试题描述 假定一张信封最多贴5张邮票,如 ...

  4. LRJ入门经典-0903切蛋糕305

    原题 LRJ入门经典-0903切蛋糕305 难度级别:B: 运行时间限制:1000ms: 运行空间限制:256000KB: 代码长度限制:2000000B 试题描述 如图所示有一个矩形蛋糕,上面划分成 ...

  5. C语言学习从入门到精通书籍,10万读者都认可

    C语言程序设计从入门到精通 10万读者认可的编程图书精粹 零基础自学编程的入门图书 详解C语言编程思想和核心技术 很多初学者,对C语言.c++的概念都是模糊不清的,C语言.c++是什么,能做什么,学的 ...

  6. &lt;C#入门经典&gt;学习笔记1之初识C#

    序言 选择< C#入门经典第五版>作为自学书籍,以此记录学习过程中的笔记与心得. C#简单介绍 1. C#是一种块结构的语言 2. C#区分大写和小写 C#变量 C#的变量定义与C语言相似 ...

  7. C语言学习书籍推荐《C语言入门经典(第4版)》

    霍顿 (Ivor Horton) (作者), 杨浩 (译者) <C语言入门经典(第4版)>的目标是使你在C语言程序设计方面由一位初学者成为一位称职的程序员.读者基本不需要具备任何编程知识, ...

  8. C语言学习书籍推荐《C语言入门经典(第5版)》下载

    霍尔顿 (Ivor Horton) (作者), 杨浩 (译者) 下载地址:点我 C语言是每一位程序员都应该掌握的基础语言.C语言是微软.NET编程中使用的C#语言的基础:C语言是iPhone.iPad ...

  9. 郝斌老师C语言学习笔记(一)

    在给变量分配内存时,很可能这段内存存在以前其他程序使用留下的值.当使用VC编译器,若编译器发现没有给变量赋值而使用,就会返回一个以“85”开头的很大的数字(此时该段内存中为一个垃圾数,为了避免出现较常 ...

随机推荐

  1. android中页面的返回刷新

    android中从A activity 打开B activity 操作之后返回A activity,并且A activity状态改变就要用到刷新 我就介绍一下我开发中最常用的方法 引用函数 setRe ...

  2. js页面换行与空格

    1.换行 +'<br/>\n': 2.空格 1#JS——输出内容document.write#用于直接向 HTML 输出流写内容.简单的说就是直接在网页中输出内容.1.输出内容用“”括起, ...

  3. MVC调试异常--未能将脚本调试器附加到计算机

    32位机: 解决办法:以管理员身份打开CMD,运行:regsvr32.exe "%ProgramFiles(x86)%\Common Files\Microsoft Shared\VS7De ...

  4. AngularJS之Factory vs Service vs Provider

    原文  http://www.linuxeden.com/html/news/20140509/151538.html 当你初试 Angular 时,很自然地就会往 controller 和 scop ...

  5. 菜鸟的jQuery源码学习笔记(一)

    整个jQuery是一个自调用的匿名函数: (function(global, factory) { if (typeof module === "object" && ...

  6. FireDAC

    http://docs.embarcadero.com/products/rad_studio/firedac/frames.html Access: http://docwiki.embarcade ...

  7. SpringMVC之数据绑定(转)

    到目前为止,请求已经能交给我们的处理器进行处理了,接下来的事情是要进行收集数据啦,接下来我们看看我们能从请求中收集到哪些数据, 1.@RequestParam绑定单个请求参数值: 2.@PathVar ...

  8. 【写一个自己的js库】 3.添加几个处理字符串的方法

    1.生成重复的字符串 if(!String.repeat){ String.prototype.repeat = function (count){ return new Array(count + ...

  9. 一道C语言面试题:写一个宏,将16位的整数转为Big Endian

    题目:输入16位整数x,如0x1234,将其转为Big Endian格式再输出,此例为输出 0x3412 来源:某500强企业面试题目 思路:将x左移8位得到a,将x右移8位得到b,a+b即为所得 / ...

  10. Android 打造炫目的圆形菜单 秒秒钟高仿建行圆形菜单

    原文:Android 打造炫目的圆形菜单 秒秒钟高仿建行圆形菜单 转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/43131133, ...