![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c语言
wssbman
本人热爱电子计算机方面的知识,希望和大家交流
展开
-
K&R之宏替换的例子
宏替换的例子: #include #define MAX(A,B) ((A) > (B) ? (A):(B)) void max(int a,int b){ int c; return c = max(a,b);} int main(){ int a=2; int b =8; int c1,c2; c1 = MAX(a++,b++); c2 = max(a++,b+原创 2017-08-16 17:19:05 · 259 阅读 · 0 评论 -
c语言字符串常量
指向字符串常量的指针,内容不能改变原创 2017-09-05 16:31:49 · 830 阅读 · 0 评论 -
K&R之指针
指针: 机器的一个字节可以存放一个char 类型 两个字节存放一个short类型 四个字节可以存放一个long类型 指针只能指向特定类型的对象,就是说每个指针都必须指向某种类型的数据 void类型指针可以指向任何类型的指针 *pi += 1; 等同于++*pi 或 (*pi)++;(注意,这里必须带括号,*和++这样的一元运算符遵循从右到左的顺序结合) 指针与函数参数原创 2017-08-15 17:47:59 · 259 阅读 · 0 评论 -
K&R之初始化&宏调用
初始化 在不进行显示初始化的情况下,外部变量和静态变量都将被初始化为0,自动变量和寄存器变量的初始值为无用信息 对于外部变量的静态变量其初始化表达式必须是常量表达式 对于自动变和寄存器变量来说初始化表达式可以不是常量表达式,表达式中可以包含任意在此表达式之前已经定义的值,包括函数调用 宏调用: 宏替换对在括号中的字符串不起作用 如 #define YES 123 宏替换对引号中的原创 2017-08-15 13:29:49 · 278 阅读 · 0 评论 -
K&R寄存器变量
寄存器变量: register声明告诉编译器它所声明的变量放在寄存器中,用于使用频率高的变量,可以使程序更小,执行速度更快 如: register int x; register char c; 过量的寄存器变量不好 无论寄存器变量是存放在寄存器中还是存放在内存中,其地址不能访问 寄存器变量的初始化默认为0原创 2017-08-15 11:16:00 · 235 阅读 · 0 评论 -
K&R 之extern
extern: extern用于访问外部变量 例子: 在config.h中 int p = 10; char x[10] = "hello" ; 在test1.c中 #include "config.h" #include int main(){ extern p; p++; extern x[]; printf("%d,%s",p,x); return 0;原创 2017-08-15 11:00:22 · 173 阅读 · 0 评论 -
K&R 导论
第一章 数值运算: 如果某个算数运算符的所有操作都是整型,则执行整型运算。2 如果其中一个是浮点型,则在运算前将整型转换成浮点型,然后运算。 一般如果定义了一个float 变量,该整型变量是整数,也要写上小数点,便于阅读。 打印时字符格式: int a; printf("%3d",a); 这样输出的a就占3个字符宽度,一般用于输出时对齐。 float a; printf("%3原创 2017-08-14 11:35:05 · 429 阅读 · 0 评论 -
typedef
typedef 用来创建一个新的数据类型 tyoedef int Length; 将Length定义为与int具有同等意义的名字。类型Length可以用于类型声明,类型转换如: Length len,,axlen; Length ×lengths[]; typedef char *string; 定义了一个字符型指针类型string,然后可以用string 定义其他变量。 typed原创 2017-08-13 13:47:41 · 276 阅读 · 0 评论 -
K&R之const用法
const用法: const 用于修饰变量,限定该变量的值不能被修改,对于数组而言,const限定符指定的数组所有元素的值都不能改变。 const double 2 = 2.71828 const char msg[] = "hello"; const 限定符也可以配合数组参数使用,他表明函数不能修改数组元素的值 int strlen(const char[]); const的例子:原创 2017-08-17 10:59:27 · 299 阅读 · 0 评论 -
K&R 之静态变量static
static 静态变量只供其所在的源文件使用,其他函数不能使用 在某一个函数中声明static变量则只在该函数中有用 static修饰的变量,函数即使于自动变量,函数名字相同也不会产生冲突原创 2017-08-15 11:07:38 · 178 阅读 · 0 评论 -
关于指针的定义
指针的定义: 1.定义一个整型变量: int a; 2.定义一个整型指针: int *a; 3.定义一个指向整型变量指针的指针: int * *a; *的运算是自右向左进行的,可以将其看为int *(*a),可以将其分成两部分来看,第一部分是int *是一个指向整形的指针, 第二部分是(*a)是一个指针变量,也就是说(*a)是一个指向整型的指针,那么a则是指向指针的指针 4.原创 2017-08-16 20:48:16 · 2910 阅读 · 0 评论 -
第一章 unix基础知识
1.1引言 所有操作系统都为它所运行的程序提供服务,典型的服务包括执行新程序,代开文件,读文件,分配存储区等 1.2unix体系结构 操作系统可以视为一种软件,它控制计算机的硬件资源,提供程序运行环境,此即为内核内核的接口称为系统调用,公用函数建立在系统接口之上,应用程序既可以使用公用库函数又可以使用系统调用。其实shell是一种特殊的应用程序,为运行其他程序提供了一个接口。 当然更广泛原创 2017-11-03 10:38:12 · 1283 阅读 · 0 评论