zoukankan      html  css  js  c++  java
  • C++语言学习——LRJ入门经典笔记

    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足够存放下文件的一行内容。除了在文件结束前没有遇到' '这种特殊情况外,buf总是以‘ ’结尾。当一个字符都没有读到时,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,' ');

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

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

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

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

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

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

    assert(x>0);

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

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

  • 相关阅读:
    学习WCF4.0
    C++/CLI几点说明:
    微软StockTrader 4.0 学习笔记配置服务实现示例指南(二)
    PHP register_shutdown_function函数详解
    ASP.NET 中做柱状图和饼图
    如何获取重载了operator &的类对象的实际地址?
    面试题:按单词逆转字符串(2010/10/09)
    如何让模板类跟友元模板函数一一对应起来
    非递归中序输出二叉搜索树
    卖电影票
  • 原文地址:https://www.cnblogs.com/jxzheng/p/4768053.html
Copyright © 2011-2022 走看看