虽然匆匆忙忙,但还是要做笔记,虽然大概都知道......

挑一些容易忘记的地方

第四章 字符串和格式化输入/输出

  1. C语言没有专门储存字符串的变量类型,字符串通常被存储在char类型的数组中,字符串在末尾会有一个空字符\0,一种非打印字符,ASCⅡ码是0。C语言中字符串一定以空字符结束,这意味着数组的容量至少比存储字符串的字符数多1。通常可以用'\0'字符来作为遍历字符串的结束条件。
  2. strlen()函数可以给出字符串的字符长度,包含在string.h的头文件内
    1. sizeof与strlen的区别:sizeof会算出数组占用的总储存空间,strlen会算出数组内用来储存字符串的储存空间数
  3. #define通常用于设定常量,用法:#define MONEY 100意思是MONEY就是一个常量,数值为100,没有分号和'='号。C90标准新增了个const,用于限定一个变量为只读,用法:const int Pen = 1.5,用法较#define更为灵活
  4. printf函数的转换说明与各自输出类型

转换说明及其打印的输出结果

转换说明 输出
%a 浮点数、十六进制数和p计数法(C99/C11)
%A 浮点数、十六进制数和p计数法(C99/C11)
%c 单个字符
%d 有符号十进制整数
%e 浮点数,e计数法
%E 浮点数,e计数法
%f 浮点数,十进制计数法
%g 根据值的不同,自动选择%f或%e。%e格式用于指数小于-4或者大于等于精度值
%G 根据值的不同,自动选择%f或%e。%e格式用于指数小于-4或者大于等于精度值
%i 有符号十进制整数(与%d相同)
%o 无符号八进制整数
%p 指针
%s 字符串
%u 无符号十进制整数
%x 无符号十六进制整数,采用十六进制数of
%X 无符号十六进制整数,采用十六进制数oF
%% 打印一个百分号

第五章 运算符、表达式和语句

  1. while语句在使用中,首次到达while循环时,会先去判断括号内条件的情况,括号中内容为真即可开始循环的语句
  2. 运算符优先级:运算符优先级(从高到低)
运算符 结合律
() 从左往右
+ - (一元) 从右往左
* / 从左往右
+ - (二元) 从左往右
= 从右往左
  1. ++i比i++效率更高
  2. 形参与实参

    形参:变量

    实参:函数调用提供的值
   #include <stdio.h>
void pound(int n);// ANSI函数原型
int main()
{
int times = 5;
char ch = '!';//ASCII码是33
float f = 6.0; pound(times);
pound(ch);
pound(f); getchar(); return 0;
} void pound(int n)
{
while (n-- > 0)
printf("#");
printf("\n");
}

第六章 C控制语句:循环

  1. _Bool使用

    _Bool类型的变量只能储存1(真)和0(假)
#include <stdio.h>
int main(void)
{
long num;
long sum = 0L;
_Bool input_is_good; printf("Please enter an integer to be summed");
printf("(q to quit): ");
input_is_good = (scanf_s("%ld", &num) == 1); while (input_is_good)
{
sum += num;
printf("Please enter next integer (q to quit): ");
input_is_good = (scanf_s("%ld", &num) == 1);
}
printf("Those integers sum to %ld.\n", sum); getchar();
getchar();
getchar(); return 0;
}

C99标准提供了stdbool.h的头文件,可以用bool作为_Bool的别名

OK,这里就是4~6章的大概的重难点啦,祝大家双十一快乐:)

《C Primer Plus》第六版笔记--4~6章的更多相关文章

  1. C++ Primer Plus 第六版笔记

    C++ Primer Plus 第六版笔记 关于对象声明的思考 转自:http://www.cnblogs.com/weiqubo/archive/2009/11/02/1930042.html C+ ...

  2. 《C Primer Plus》第六版笔记--7~10章

    目录 第七章 C控制语句:分支和跳转 第八章 字符输入/输出和输入验证 第九章 函数 第十章 数组和指针 第七章 C控制语句:分支和跳转 if else 用法 if (expression) //ex ...

  3. 《C Primer Plus》第六版笔记--1~3章

    目录 第一章 初识C语言 1 使用C语言的7个步骤 1.1 定义程序目标 1.2 设计程序(功能实现) 1.3 编写代码 1.4 编译 1.5 运行程序 1.6 测试和调试程序 1.7 维护和修改代码 ...

  4. c++ primer plus 第6版 部分三 9章 - 章

    c++ primer plus 第6版                                               部分三 9章 - 章 第9章   内存模型和名称空间 1.单独编译 ...

  5. 《C++Primer》第五版习题答案--第一章【学习笔记】

    C++Primer第五版习题解答---第一章 ps:答案是个人在学习过程中书写,可能存在错漏之处,仅作参考. 作者:cosefy Date: 2022/1/7 第一章:开始 练习1.3 #includ ...

  6. 《C++Primer》第五版习题答案--第二章【学习笔记】

    C++Primer第五版习题解答---第二章 ps:答案是个人在学习过程中书写,可能存在错漏之处,仅作参考. 作者:cosefy Date: 2020/1/9 第二章:变量和基本类型 练习2.1: 类 ...

  7. c++ primer plus 第6版 部分二 5- 8章

    ---恢复内容开始--- c++ primer plus 第6版 部分二    5-  章 第五章 计算机除了存储外 还可以对数据进行分析.合并.重组.抽取.修改.推断.合成.以及其他操作 1.for ...

  8. c++ primer plus 第6版 部分一 1-4章

    c++ primer plus 第6版 源代码 ---编译器---目标代码---连接程序(启动代码--库代码)---可执行代码 源代码扩展名:c   cc   cxx     C    cpp     ...

  9. 《C++ Primer Plus 第六版》读书笔记

    CH1-3:处理数据 1 列表初始化 char c={31325}:不允许缩窄 char c={66}; char c={x}:不能为变量 2 强制类型转换 (typename) value type ...

随机推荐

  1. 【weex开发】vue-swipe 滑动组件的使用

    一,vue-swipe简介 vue-swipe 是饿了么团队开发的vue专用的轮播图插件: 可以实现简单的图片和view轮播,可控制动画时长,可限制手动滑动: 简而言之,可以实现轮播,也可以实现ppt ...

  2. FreeRTOS学习记录--任务创建函数详解

    开局一张图.一步一步分析就好. (一)什么是任务? 在多任务系统中,我们按照功能不同,把整个系统分割成一个个独立的,且无法返回的函数,这个函数我们称为任务:任务包含几个属性:任务堆栈,任务函数.任务控 ...

  3. 用来创建用户docker registry认证的Secret

    集群环境:1.k8s用的是二进制方式安装2.操作系统是linux (centos)3.操作系统版本为 7.4/7.94.k8s的应用管理.node管理.pod管理等用rancher.k8s令牌以及ma ...

  4. metasploit基本命令

    一.核心命令 ? 帮助命令 banner 显示一个真棒metasploite横幅 cd 更改当前的工作目 color 切换颜色 connect 连接与主机通信 exit 退出控制台 get 获取特定于 ...

  5. DRF JWT认证(二)

    快速上手JWT签发token和认证,有这一篇就够了,DRF自带的和自定义的都帮你总结好了,拿去用~

  6. 前端优化建议:合理利用JavaScript的条件运算符

    在最近的项目中要使用到一个格式化文件大小的算法,于是不假思索写了如下代码: function formatSize(size){ if(size<1024){ return size+" ...

  7. python3.5上使用virtualenv创建虚拟环境的坑

    一.坑一:安装的virtualenv版本太高 显示使用virtualenv 安装虚拟环境报错 出现这个问题就是说明你的virtualev安装的版本太高,降低一下版本重新安装即可,我这里使用的是15这个 ...

  8. MyBatis插件 - 通用mapper

    1.简单认识通用mapper 1.1.了解mapper 作用:就是为了帮助我们自动的生成sql语句 [ ps:MyBatis需要编写xxxMapper.xml,而逆向工程是根据entity实体类来进行 ...

  9. python学习-Day38-HTTP

    目录 HTTP简介 可以充当客户端的有哪些 HTTP 工作原理 HTTP协议 HTTP协议四大特性 数据格式 请求格式: 响应格式: HTTP 请求方法 HTTP 状态码分类 响应分为五类: HTTP ...

  10. 超详细的Linux 用户与用户组知识

    一个执着于技术的公众号 1.用户和组的概念 Linux系统对用户与组的管理是通过ID号来实现的.我们在登录系统时,输入用户名与对应密码,操作系统会将用户名转化为ID号后再判断该账号是否存在,并对比密码 ...