![](https://img-blog.csdnimg.cn/20190918140145169.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C语言重难点总结
文章平均质量分 68
C语言入门很容易,但是有一些细节却非常值得推敲,所以总结在此专栏中
快乐江湖
专注人工智能领域和优质计算机学习笔记创作
展开
-
C语言重难点总结:printf和scanf
一:printf(1)格式字符总结int main(){ int a = 10;//有符号十进制数 unsigned int b = -1;//无符号十进制数 double c = 3.1415926;//小数 char d = 't';//字符 const char* str = "just a test!";//字符串 int* p = &a;//指针 printf("以十进制形式输出符号整数a=%d\n", a); printf("以八进制形式输出符号整数a=%o\n原创 2021-04-01 19:15:50 · 309 阅读 · 0 评论 -
C语言重难点总结:指针
文章目录一:指针和数组名的关系(1)[]运算符(2)指针和数组名的关系二:const修饰指针问题三:指针数组和数组指针四:函数指针一:指针和数组名的关系(1)[]运算符[]运算符的作用:,编译器会这样处理a[i]==*(a+i)(2)指针和数组名的关系数组名是指针常量,普通指针是指针变量所以如果执行int* const p=a,表示将指针修饰为常量,因此此时的p和a就基本一致了,也是不允许修改的二:const修饰指针问题简记:const放在谁后面就修饰谁1:const int i与i原创 2021-05-06 15:39:58 · 545 阅读 · 0 评论 -
C语言重点难点:与,或和异或
完整介绍简记引用位运算在一类题中应有很广泛位运算在一类数组题中的用法 只出现一次的数字I原创 2021-05-06 15:48:51 · 360 阅读 · 0 评论 -
C语言重难点:内存对齐和位段
一:结构体内存对齐(1)为什么要存在内存对齐平台原因(移植原因): 不是所有的硬件平台都能访问任意地址上的任意数据的;某些平台只能在某些地址处取得某些特定类型的数据,否则抛出硬件异常。比如,当一个平台要取一个整型数据时只能在地址为4的倍数的位置取得,那么这时就需要内存对齐,否则无法访问到该整型数据。性能原因:数据结构(尤其是栈)应该尽可能的在自然边界上对齐。原因在于,为了访问未对齐内存,处理器需要作两次内存访问;而对齐的内存访问仅需一次。核心思想就是:以空间换取时间(2)结构体对齐规则原创 2021-05-06 17:13:28 · 794 阅读 · 9 评论 -
C语言重难点:运算符优先级
文章目录运算符优先级算数运算符关系运算符逻辑运算符位运算符(点击)赋值运算符其他运算符优先级算数运算符关系运算符逻辑运算符位运算符(点击)赋值运算符其他原创 2021-05-07 14:02:13 · 212 阅读 · 0 评论 -
C语言重难点:大端小端
文章目录一:大端和小端二:经典问题一:大端和小端大端(存储)模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地中;小端(存储)模式,是指数据的低位保存在内存的低地址中,而数据的高位,,保存在内存的高地址中二:经典问题1:如何判断当前机器的字节序2:下面的程序输出的是什么(64位操作系统)#include <stdio.h>struct task{ uint16_t id;//2个字节 uint32_t value;//4个字节 uint64_t原创 2021-05-13 17:05:07 · 636 阅读 · 0 评论 -
【C语言重点难点】数据类型、常量和变量
这部分东西在C语言考试中特别爱考,但是十分琐碎,所以总结如下一:C语言包含的数据类型二:各数据类型细节三:C语言中常量和变量原创 2021-11-06 18:27:44 · 1268 阅读 · 1 评论 -
【C语言重点难点精讲】关键字精讲
必读:C语言关键字是一个非常重要的话题,因为它能在相当的程度上将C语言的核心内容串联起来,起到一种提纲挈领的效果下面的内容重点提及的是相应关键字特别值得注意的地方,这些地方是我们经常忽略的,而且考试也会经常涉及到讲解这些关键字时默认大家都有C语言的基础,因此不会从0开始谈起文章目录一:auto关键字二:register关键字(1)存储器分级(2)register修饰变量三:static关键字(1)修饰全局变量和函数(2)修饰局部变量四:sizeof关键字五:signed、unsigned关键字六原创 2021-10-11 12:13:21 · 841 阅读 · 0 评论 -
【C语言重点难点精讲】C语言中的重要符号
文章目录一:续接符和转义符(1)续接符(2)转义字符一:续接符和转义符(1)续接符如果一行写不下了可以使用续接符\进行换行int main(){ int a=1; int b=2; int c=3; if(1==a &&\//注意后面不要出现任何符号 2==b &&\//注意后面不要出现任何符号 3==c){ printf("1\n"); }else{ printf("2\n"); } return 0;原创 2021-10-14 14:20:49 · 592 阅读 · 0 评论 -
【C语言重点难点精讲】C语言预处理
文章目录一:C/C++程序程序编译过程A:预处理B:编译C:汇编D:链接一:宏定义(1)数值宏常量(2)字符串宏常量(3)使用宏充当注释一:C/C++程序程序编译过程A:预处理预处理主要包括宏定义,文件包含,条件编译,去注释输入gcc -E hello.c -o hello.i,其中选项E作用是让gcc在预处理后停止编译B:编译此阶段,gcc检查代码的规范性,是否具有语法错误输入gcc -S hello.i -o hello.s,即可将预处理里的结果继续继续编译C:汇编编原创 2021-10-17 11:19:16 · 464 阅读 · 0 评论 -
【C语言重点难点精讲】C语言指针
123原创 2021-10-23 12:10:08 · 783 阅读 · 0 评论 -
【C语言重点难点精讲】C语言内存管理
文章目录一:相关动态内存函数(1)malloc和free(2)calloc(3)reallocC语言内存管理其实是一个很糟糕的话题,很烦这个,但是没有办法,考试就爱考这些东西一:相关动态内存函数(1)malloc和freeint main(){ //malloc返回值为void*,所以需要进行强转 int* p = (int*)malloc(sizeof(int) * 10); //malloc有可能申请失败 if (p == NULL) { printf("%s\n", strer原创 2021-10-29 20:41:20 · 754 阅读 · 0 评论 -
【C语言重点难点精讲】C语言文件
文章目录一:文件相关概念(1)什么是文件(2)文件名(3)文件类型二:文件指针三:文件的打开和关闭四:文件的顺序读写(1)写(2)读五:文件的随机读取(1)fseek(2)ftell(3)rewind六:文件结束条件判定一:文件相关概念(1)什么是文件我们在磁盘上所见到的都是文件,在程序设计中,所谈到文件主要有两种:一种是程序文件:包括源程序文件(后缀为.c),目标文件(windows环境后缀为.obj),可执行程序(windows环境后缀为.exe);另一种是数据文件:文件的内容不一定是程序,原创 2021-10-29 21:43:43 · 655 阅读 · 1 评论