C语言
文章平均质量分 74
分享一些C语言编程知识
有温度的程序员
10多年的C/C++开发经验
展开
-
C 语言预处理
1 预处理概述1、前面各章中,已经多次使用过#include命令。使用库函数之前,应该用#include引入对应的头文件。这种以 #号开头的命令称为预处理命令。2、C语言提供了多种预处理功能,如宏定义、文件包含、条件编译等。合理地使用预处理功能编写的程序便于阅读、修改、移植和调试,也有利于模块化程序设计2 宏定义1、在C语言源程序中允许用一个标识符来表示一个字符串,称为“宏”。被定义为“宏”的标识符称为“宏名”2、在编译预处理时对程序中所有出现的“宏名”,都用宏定义中的字符串去进行文本替换,,这称原创 2022-05-27 12:42:38 · 391 阅读 · 1 评论 -
C程序的基本组成结构
一、C程序的基本组成结构1、源文件: 后缀为.c 的文件2、头文件:后缀为.h的文件注意:源文件功能:实现程序功能头文件功能:函数的声明、全局变量的声明、宏定义、类型的声明一个由C语言所组成的项目中只允许有一个main函数二、头文件2.1 头文件的作用1、宏定义#define PI 3.142、结构体定义typedef struct student{ char name[32]; int age;}Stu;3、全局变量的声明extern int原创 2022-05-27 12:31:15 · 8154 阅读 · 0 评论 -
C语言位运算实用技巧
C语言位运算实用技巧左移实现乘法左移n位等价于乘以2的n次方int x;x = 2;x = x << 2;x = x << 3使用左移实现乘法运算仅限于乘以2的倍数是不是只要是左移就能够实现乘以2的倍数呢?char x = 120;x = x << 2;如果执行上面的代码,最终x的值是多少呢?右移实现除法右移n位等价于除以2的n次方int x = 100;x = x >> 1;x = x >原创 2022-05-27 12:03:43 · 737 阅读 · 2 评论 -
while(1) 和 for(;;)的区别你真的知道吗?
在平时的学习和工作中,我们经常会使用到无限循环(死循环),在C语言中无限循环有两种实现发给发:while(1) 和 for(;;)。但是这两者到底有什么区别呢?其实我们可以编写一段while(1) 和 for(;;)的代码,编译对比一下代码大小和汇编文件,大概就知道了。一、while(1)和for(;;)语法表达1、while语法表达while( 表达式 ){ 语句}其中: 表达式:是循环条件 语句:为循环体。 while语句的语义是:计算表达式的值,当值原创 2022-05-26 12:13:56 · 2759 阅读 · 0 评论