随笔分类 -  c语言

摘要:伪代码(Pseudocode)是一种算法描述语言。使用伪代码的目的是为了使被描述的算法可以容易地以任何一种编程语言(C, Java, Pascal)实现。因此,伪代码必须结构清晰,代码简单,可读性好,并且类似自然语言。 伪代码的优点 提高任何方法的可读性。这是开始实现算法的最佳方法之一。 充当程序与 阅读全文
posted @ 2021-03-12 17:08 myrj 阅读(2120) 评论(0) 推荐(0)
摘要:编译程序和解释程序是程序执行的两种不同执行方式。 编译程序:编译程序的功能是把用高级语言书写的源程序翻译成与之等价的目标程序。编译过程划分成词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成6个阶段。目标程序可以独立于源程序运行。(编译程序是一个语言处理程序,它可以把高级语言程序给语 阅读全文
posted @ 2021-03-12 15:18 myrj 阅读(1870) 评论(0) 推荐(0)
摘要:希望定义这样一种变量,它的值不能被改变,在整个作用域中都保持固定。例如,用一个变量来表示班级的最大人数,或者表示缓冲区的大小。为了满足这一要求,可以使用const关键字对变量加以限定:const int MaxNum = 100; //班级的最大人数这样 MaxNum 的值就不能被修改了,任何对 M 阅读全文
posted @ 2021-03-12 14:58 myrj 阅读(1179) 评论(0) 推荐(0)
摘要:size_t 的全称应该是size type,就是说“一种用来记录大小的数据类型”。通常我们用sizeof(XXX)操作,这个操作所得到的结果就是size_t类型。因为size_t类型的数据其实是保存了一个整数,所以它也可以做加减乘除,也可以转化为int并赋值给int类型的变量。类似的还有wchar 阅读全文
posted @ 2021-03-12 11:16 myrj 阅读(935) 评论(0) 推荐(0)
摘要:[Warning] incompatible implicit declaration of built-in function 'strlen' [enabled by default] 提示:strlen() 不兼容的函数声明(字符串长度函数) 位于头文件<string.h> 需要添加:#inc 阅读全文
posted @ 2021-03-12 10:49 myrj 阅读(392) 评论(0) 推荐(0)
摘要:a=6 a=-18 a 的原码就是0000 0000 0000 0110 1000 0000 0001 0010 反码: 0000 0000 0000 0110 1111 1111 1110 1101 补码: 0000 0000 0000 0110 1111 1111 1110 1110 对于正数, 阅读全文
posted @ 2021-03-11 22:13 myrj 阅读(288) 评论(0) 推荐(0)
摘要:没学指针就是没学C语言!指针是C语言的精华,也是C语言的难点,破解C语言指针,会让你的C语言水平突飞猛进。所谓指针,也就是内存的地址;所谓指针变量,也就是保存了内存地址的变量。不过,人们往往不会区分两者的概念,而是混淆在一起使用,在必要的情况下,大家也要注意区分 计算机中所有的数据都必须放在内存中, 阅读全文
posted @ 2021-03-11 16:07 myrj 阅读(230) 评论(0) 推荐(0)
摘要:C语言允许为一个数据类型起一个新的别名,就像给人起“绰号”一样。 起别名的目的不是为了提高程序运行效率,而是为了编码方便。例如有一个结构体的名字是 stu,要想定义一个结构体变量就得这样写:struct stu stu1; struct 看起来就是多余的,但不写又会报错。如果为 struct stu 阅读全文
posted @ 2021-03-11 15:51 myrj 阅读(1505) 评论(0) 推荐(0)
摘要:数据加密解密是一个常用的功能,如果你不希望让别人看到文件中的内容,可以通过密钥(也称”密码“)将文件的内容加密。比如文本文件(.txt),加密前的内容是能够读懂的,加密后的内容是”乱码“,都是一些奇怪的字符,根本无法阅读。数据加密解密的原理也很简单,就是使用异或运算。请先看下面的代码: #inclu 阅读全文
posted @ 2021-03-11 15:48 myrj 阅读(401) 评论(0) 推荐(0)
摘要:所谓位运算,就是对一个比特(Bit)位进行操作。在《数据在内存中的存储》一节中讲到,比特(Bit)是一个电子元器件,8个比特构成一个字节(Byte),它已经是粒度最小的可操作单元了。C语言提供了六种位运算符: 运算符 & | ^ ~ << >> 说明 按位与 按位或 按位异或 取反 左移 右移 按位 阅读全文
posted @ 2021-03-11 15:46 myrj 阅读(453) 评论(0) 推荐(0)
摘要:有些数据在存储时并不需要占用一个完整的字节,只需要占用一个或几个二进制位即可。例如开关只有通电和断电两种状态,用 0 和 1 表示足以,也就是用一个二进位。正是基于这种考虑,C语言又提供了一种叫做位域的数据结构。在结构体定义时,我们可以指定某个成员变量所占用的二进制位数(Bit),这就是位域。请看下 阅读全文
posted @ 2021-03-11 15:44 myrj 阅读(666) 评论(0) 推荐(0)
摘要:大端和小端是指数据在内存中的存储模式,它由 CPU 决定:1) 大端模式(Big-endian)是指将数据的低位(比如 1234 中的 34 就是低位)放在内存的高地址上,而数据的高位(比如 1234 中的 12 就是高位)放在内存的低地址上。这种存储模式有点儿类似于把数据当作字符串顺序处理,地址由 阅读全文
posted @ 2021-03-11 15:42 myrj 阅读(1937) 评论(0) 推荐(0)
摘要:结构体(Struct)是一种构造类型或复杂类型,它可以包含多个类型不同的成员。在C语言中,还有另外一种和结构体非常类似的语法,叫做共用体(Union),它的定义格式为: union 共用体名{ 成员列表}; 共用体有时也被称为联合或者联合体,这也是 Union 这个单词的本意。 结构体和共用体的区别 阅读全文
posted @ 2021-03-11 15:41 myrj 阅读(1441) 评论(0) 推荐(0)
摘要:在实际编程中,有些数据的取值往往是有限的,只能是非常少量的整数,并且最好为每个值都取一个名字,以方便在后续代码中使用,比如一个星期只有七天,一年只有十二个月,一个班每周有六门课程等。以每周七天为例,我们可以使用#define命令来给每天指定一个名字: #include <stdio.h> #defi 阅读全文
posted @ 2021-03-11 15:37 myrj 阅读(117) 评论(0) 推荐(0)
摘要:当一个指针变量指向结构体时,我们就称它为结构体指针。C语言结构体指针的定义形式一般为: struct 结构体名 *变量名; 下面是一个定义结构体指针的实例: //结构体 struct stu{ char *name; //姓名 int num; //学号 int age; //年龄 char gro 阅读全文
posted @ 2021-03-11 15:35 myrj 阅读(339) 评论(0) 推荐(0)
摘要:所谓结构体数组,是指数组中的每个元素都是一个结构体。在实际应用中,C语言结构体数组常被用来表示一个拥有相同数据结构的群体,比如一个班的学生、一个车间的职工等。在C语言中,定义结构体数组和定义结构体变量的方式类似,请看下面的例子: struct stu{ char *name; //姓名 int nu 阅读全文
posted @ 2021-03-11 15:33 myrj 阅读(609) 评论(0) 推荐(0)
摘要:数组(Array),它是一组具有相同类型的数据的集合。但在实际的编程过程中,我们往往还需要一组类型不同的数据,例如对于学生信息登记表,姓名为字符串,学号为整数,年龄为整数,所在的学习小组为字符,成绩为小数,因为数据类型不同,显然不能用一个数组来存放。 在C语言中,可以使用结构体(Struct)来存放 阅读全文
posted @ 2021-03-11 15:27 myrj 阅读(236) 评论(0) 推荐(0)
摘要:函数用于计算,过程用于操作。 一般来说,一个程序在运行中遇到一个函数,即压栈(可暂理解为储存)当前所有状态,并停止运行当前程序,转入运行函数体,此时函数体的运行是在与原程序毫不相干的空间中运行,无论函数怎么运行都不会对原程序造成任何影响,当函数体运行结束时,此函数运行时所开辟的空间也随之消失,原程序 阅读全文
posted @ 2021-03-11 09:42 myrj 阅读(198) 评论(0) 推荐(0)
摘要:在编译之前对源文件进行简单加工的过程,就称为预处理(即预先处理、提前处理)预处理主要是处理以#开头的命令,例如#include <stdio.h>等。预处理命令要放在所有函数之外,而且一般都放在源文件的前面。预处理是C语言的一个重要功能,由预处理程序完成。当对一个源文件进行编译时,系统将自动调用预处 阅读全文
posted @ 2021-03-10 21:22 myrj 阅读(786) 评论(0) 推荐(0)
摘要:C语言编程入门 0.数学中的常数在编程语言中称为常量,是一直不变的。如1,2,'a',"abc",3456,34.56等1.变量:类似于数学中的未知数。实际上就是指可用内存的一块区域,指定该区域只能保存特定类型的数据,并给该内存区域起个名叫变量名2.总体思路:开始--用变量保存已知条件--利用变量进 阅读全文
posted @ 2021-03-10 11:15 myrj 阅读(476) 评论(0) 推荐(0)