自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 c语言:共用体和位运算

(3)当不同源文件中用到同一类型数据(尤其是像数组、指针、结构体、共用体等类型数据)时,常用typedef声明一些数据类型,把它们单独放在一个文件中,然后在需要用到它们的文件中用#include命令把它们包含进来。(4)不能对共用体变量名赋值,也不能企图引用变量名来得到一个值,又不能在定义共用体变量时对它初始化。(5)可以把共用体变量作为函数参数,也可以使函数带回共用体变量,而且可以使用指向共用体变量的指针。(2)共用体变量中起作用的成员是最后一次存放的成员,在存入一个新的成员后原有的成员就失去作用。

2024-08-02 21:21:00 182

原创 c语言:结构体与共用体

struct 是声明结构体类型时所必须使用的关键字,不能省略),它向编译系统声明这是一个“结构体类型”,它包括 num、name、sex、age、score、addr等不同类型的数据项。如果成员本身又属一个结构体类型,则要用若干个成员运算符,一级一级地找到最低的一级的成员。4、用预处理命令#pragma pack(n) 可以强制编译器按照指定的n来对齐,合法的n的数值分别是1、2、4、8、16。2、结构体成员按照结构体成员声明先后次序依次存放,并且每个成员的首字节放置的位置必须能够整除成员的字节数;

2024-08-01 19:54:33 322

原创 c语言基础:指针(3)

表示定义一个指向函数的指针变量p,它不是固定指向哪一个函数的,而只是表示定义了这样一个类型的变量,它是专门用来存放函数的入口地址的。(5)用函数指针变量调用函数时,只需将(*p)代替函数名即可(p为指针变量名),在(*p)之后的括号中根据需要写上实参。实参是和命令一起给出的,也就是在一个命令行中包括命令名和需要传给 main函数的参数。(6)对指向函数的指针变量,像p+n、p++、P--等运算是无意义的。一个函数在编译时被分配一个入口地址,这个函数的入口地址就称为函数的指针。main函数可以这样写。

2024-07-31 20:11:07 249

原创 c语言基础:指针(2)

将一个字符串从一个函数传递到另一个函数,可以用地址传递的办法,即用字符数组名作参数,也可以用指向字符的指针变量作参数。在被调用的函数中可以改变字符串的内容,在主调函数中可以得到改变了的字符串。字符数组由若干个元素组成,每个元素中放一个字符,而字符指针变量中存放的是地址(字符串第1个字符的地址),决不是将字符串放到字符指针变量中。返回值为指针的函数,不能返回局部变量的地址,可以返回全局变量或static局部变量的地址。其申请的字节一定是连续的,这个函数返回的是其所申请空间字节的首地址。

2024-07-30 23:18:11 133

原创 c语言基础:指针(1)

需要说明的是:C语言调用函数时虚实结合的方法都是采用“值传递”方式,当用变量名作为函数参数时传递的是变量的值,当用数组名作为函数参数时,由于数组名代表的是数组首元素地址,因此传递的值是地址,所以要求形参为指针变量。指针变量中只能存放地址(指针),不要将一个整数(或任何其他非地址类型的数据)赋给一个指针变量。其中p和(p+1) 相差的是的1个sizeof(基类型)。注: (1)指针变量前面的“*”表示该变量的类型为指针型变量。(2)*:指针运算符(或称“间接访问”运算符),取其指向的内容。

2024-07-29 19:16:06 125

原创 c语言基础(4)

不同的系统允许使用的寄存器个数是不同的,而且对register 变量的处理方法也是不同的,有的系统对register变量当作自动变量处理,分配内存单元,并不真正把它们存放在寄存器中,有的系统只允许将int、char和指针型变量定义为寄存器变量。在需要调用此函数的文件中,用extern对函数作声明,表示该函数是在其他文件中定义的外部函数。这称为“局部变量”。说明:(1)主函数中定义的变量(m,n)也只在主丽数中有效,而不因为在主函数中定义而在整个文件或程序中有效,主函数也不能使用其伦函数中定义的变量。

2024-07-29 00:57:03 458

原创 c语言:函数(3)

3)在被调用函数中声明了形参数组的大小为10,但在实际上,指定其大小是不起任何作用的,因为C语言编译对形参数组大小不做检查,只是将实参数组的首元素的地址传给形参数组。5)最后应当强调说明一点:用数组名作函数实参时,不是把数组元素的值传递给形参,而是把实参数组的首元素的地址传递给形参数组,这样两个数组就共占同一段内存单元。由于实参可以是表达式,而数组元素可以是表达式的组成部分,因此数组元素当然可以作为函数的实参,与用变量作实参一样,是单向传递,即“值传送”方式。1.数组元素作函数实参。1.数组作为函数参数。

2024-07-26 20:35:19 118

原创 c语言:函数(2)

在定义函数时函数名后面括号中的变量名称为“形式参数”(简称“形参”),在主调函数中调用一个函数时,函数名后面括号中的参数(可以是一个表达式)称为“实际参数”(简称“实参”)。注: 在调用函数时,给形参分配存储单元,并将实参对应的值传递给形参,调用结束后,形参单元被释放,实参单元仍保留并维持原值。因此,在执行一个被调用函数时,形参的值如果发生改变,并不会改变主调函数的实参的值。既然函数有返回值,这个值当然应属于某一个确定的类型,应当在定义函数时指定函数值的类型。3)在被定义的函数中,必须指定形参的类型。

2024-07-25 21:01:39 452

原创 c语言:数组 和 函数

(3)C程序的执行是从main函数开始的,如是在main函数中调用其他函数,在调用后流程返回到 main 函数,在main 函数中结束整个程序的运行。(4)所有函数都是平行的,即在定义函数时是分别进行的,是互相独立的,函数间可以互相调用,但不能调用 main函数。main函数是系统调用的。例如: int a[3][4]-{{1,2,3,4),(5,6,7,8),(9,10,11,12)};C语言中,二维数组中元素排列的顺序是按行存放的,即在内存中先顺序存放第一行的元素,再存放第二行的元素。

2024-07-24 21:23:24 271

原创 c语言:数组(2)

(3)如果在复制前未对str1数组赋值,则str1各字节中的内容是无法预知的,复制时将str2中的字符串和其后的"0’一起复制到字符数组1中,取代字符数组1中的前面6个字符,最后4个字符并不一定是斜杠零,而是str1中原有的最后4个字节的内容。在C语言中,是将字符串作为字符数组来处理的,字符串中的字符是逐个存放到数组元素中的,这个字符串的实际长度与数组长度相等,C语言规定了一个“字符串结束标志”,以字符'\0'作为标志。作用是将str2中最前面2个字符复制到str1中,取代strl中原有的最前面2个字符。

2024-07-23 20:11:12 651

原创 c语言中的数组(1)

(4)在对全部数组元素赋初值时,由于数据的个数已经确定,因此可以不指定数组长度,但若数组长度与提供初值的个数不相同,则数组长度不能省略。注意:定义数组时用到的“数组名[常量表达式]”和引用数组元素时用到的“数组名[下标]”的区别,(3)常量表达式中可以包括常量和符号常量,不能包含变量,即数组的大小不依赖于程序运行过程中变量的值。(2)在定义数组时,需要指定数组中元素的个数,方括号中的常量表达式用来表示元素的个数,即数组长度。如:int a[5] = {1,2,3,4,5};连续性:数组的地址之间没有间隔。

2024-07-23 12:51:50 366

原创 c语言中的循环控制

while循环中,只在while后面的括号内指定循环条件,因此为了使循环能正常结束,应在循环体中包含使循环趋于结束的语句(如i十十,或i-i+1等)。while 循环和 for 循环,可以用 break语句跳出循环,用 continue语句结束本次循环(break语句和continue语句见6.8节)。(7)表达式一般是关系表达式(如i<=100)或逻辑表达式(如a<b&&x<y),但也可以是数值表达式或字符表达式,只要其值为非零,就执行循环体。称为循环的执行条件;++i,称为是循环趋于结束的语句。

2024-07-20 18:40:48 617

原创 选择结构程序设计

表达式2 :表达式3 如果表达式1为真,则表达式2的值作为整个条件表达式的值,如果表达式1为假 ,则表达式3的值作为整个条件表达式的值.当表达式的值与某一个case后面的常量表达式的值相等时,就执行此 case 后面的语句,若所有的case 中的常量表达式的值都没有与表达式的值匹配的,就执行 default后面的语句。用关系运算符将两个表达式(可以是算术表达式或关系表达式、逻辑表达式、赋值表达式、字符表达式)连接起来的式子,称关系表达式。关系表达式的值是一个逻辑值,即“真”或“假”。

2024-07-19 21:24:09 692

原创 c语言中数据的输入输出

f :用来输出实数(包括单、双精度),以小数形式输出,不指定字段宽度,由系统自动指定,使整数部分全部输出,并输出6位小数应当注意,在输出的数字中并非全部数字都是有效数字。注:一个整数,只要它的值在0~255范围内,也可以用“%c”使之按字符形式输出,在输出前,系统会将该整数作为ASCII码转换成相应的字符;%g : 用来输出实数,它根据数值的大小,自动选f格式或e格式(选择输出时占宽度较小的一种),且不输出无意义的零。“地址表列”是由若干个地址组成的表列,可以是变量的地址,或字符串的首地址。

2024-07-18 19:19:51 719

原创 c语言中运算符与表达式

如果已定义x为 float型,进行强制类型运算后得到一个int 型的中间变量,它的值等于x的整数部分,而x的类型不变(仍为float 型)。如果短整型数据为正,则在整型的高位补0,如果短整型数据为负,则在整型的高位补F./ :除法运算符 ,需要说明,两个整数相除的结果为整数,如5/3的结果值为1,舍去小数部分。求余表达式的结果的符号与左操作数的的符号有关,与右操作数的符号无关。整个逗号表达式的值是表达式2的值。需要说明的是,在强制类型转换时,得到一个所需类型的中间变量,原来变量的类型未发生变化。

2024-07-17 19:28:01 510

原创 c语言的基本知识

数据在内存中是以十六进制数进行存储的,如果是正的十进制数,先转换成二进制数,再转换成十六进制进行存储,如果是负的十进制数,先求绝对值,将该数的绝对值的二进制形式,按位取反再加一,求出补码,再转换成十六进制数进行存储。字符型变量的存储:将一个字符常量放到一个字符变量中,实际上并不是把该字符本身放到内存单元中去,而是将该字符的相应的ASCII代码放到存储单元中。2 、 变量:变量代表内存中具有特定属性的一个存储单元,它用来存放数据,也就是变量的值,在程序运行期间,这些值是可以被改变的。

2024-07-16 18:38:45 876

原创 Linux的基本操作命令

cp 源文件 目标文件 -r (文件夹)可以有多个,也可以一个都没有,名字没有限制。cd .. 进入当前目录的上一级目录。相对路径:不包含有根目录信息的目录表示方法。cp 源文件 目标文件(普通文件)功能:移动文件或目录;查看当前目录下的所有文件(包含隐藏文件)绝对路径:包含有根目录信息的目录表示方法。rm 目标文件 (目录文件)编译代码main.c默认生成a.out。rm 目标文件 (普通文件)在当前目录下创建一个新的目录文件。.. :当前目录的上一级目录。

2024-07-15 19:04:03 204

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除