c语言
文章平均质量分 71
一路学好c语言
熬夜耿鬼
想进大厂的咸鱼
展开
-
程序环境和预处理(c最终章)
在ANSI C的任何一种实现中,存在两个不同的环境翻译环境:在这个环境中源代码被转换为可执行的机器指令执行环境:它用于实际执行代码组成一个程序的每个源文件通过编译过程分别转换成目标代码(object code)每个目标文件由链接器(linker)捆绑在一起,形成一个单一而完整的可执行程序链接器同时也会引入标准C函数库中任何被该程序所用到的函数,而且它可以搜索程序员个人的程序库,将其需要的函数也链接到程序中编译器在代码编译的时候,会对函数名与变量名重命名,c语言中较为简单,再前面加_程序执行的过程:1原创 2023-10-23 16:37:20 · 51 阅读 · 0 评论 -
如何进行文件操作
磁盘上的文件是文件但是在程序设计中,我们一般谈的文件有两种:程序文件、数据文件(从文件功能的角度来分类的)原创 2023-10-17 18:55:09 · 70 阅读 · 0 评论 -
scanf使用时%d前后加空格的不同情况(偶然发现番外篇)
我们在使用scanf函数时使用%d读取输入整数时,"%d"," %d","%d "会出现不同的情况(原创 2023-09-20 16:50:32 · 969 阅读 · 1 评论 -
指针进阶(1)
就俩字:上图。原创 2023-09-18 20:35:47 · 41 阅读 · 0 评论 -
数据在内存中的存储(浮点数)
数据在内存中的存储(浮点数)原创 2023-09-13 21:35:03 · 68 阅读 · 0 评论 -
自定义类型(位段/位域)
位段的声明与结构体类似,但是有些不同1.位段的成员必须是 int、unsigned int 或signed int (属于整型家族即可)2.位段的成员名后边有一个冒号和一个数字3.位段不允许取地址4.位域的位数不能大于字段类型的位数5.位段的长度不能为0。原创 2023-10-07 21:07:13 · 57 阅读 · 1 评论 -
自定义类型(枚举+联合体/共用体)
与结构体使用关键字struct不同,枚举使用enumemum color , enum week都是枚举类型{}中的内容是枚举类型的可能取值,也叫枚举常量每一个枚举常量都是有值的,默认从0开始,依次递增1当然,我们在定义的时候也可赋初值与结构体使用关键字struct不同,联合体/共用体使用union。原创 2023-10-09 16:44:13 · 68 阅读 · 1 评论 -
c语言中关于字符与字符串的库函数
本章重点介绍处理字符和字符串的库函数的使用和注意事项size_t strlen ( const char * str );用来计算字符串'\0'之前的字符个数1.strlen的返回类型是size_t(无符号整型),直接使用该类型的数据进行计算时可能会出现错误2.确保str字符串里有'\0'3.strlen形参*前有const,源字符串str不会改变char* strcpy(char * destination, const char * source );将source的字符串拷贝到destination里原创 2023-09-27 20:15:23 · 225 阅读 · 0 评论 -
static,entern函数的用法;#define定义符号和宏
static,entern函数的用法;#define定义符号和宏原创 2022-10-19 22:49:17 · 680 阅读 · 0 评论 -
指针进阶(2)
如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。使用函数指针变量不仅简洁,如果未来需要增加其他功能,我们只需要写出相应的函数,对应数组下标,然后更改选择数的范围即可,相对于switch来说,无疑优秀了很多,这里的函数指针数组还有一个名字------转移表。这是我们使用回调函数的代码,我们对加减乘除基本功能的函数不做更改,明显函数可以正常使用,并且不再冗余。既然数组名是函数地址,指针p的值也是函数的地址,那么p是否可以直接当作函数名使用呢?原创 2023-09-20 16:17:59 · 51 阅读 · 1 评论 -
动态内存管理
直接开辟空间的时候空间开辟大小是固定的数组在申明的时候,必须指定数组的长度,它所需要的内存在编译时分配但是对于空间的需求,不仅仅是上述的情况有时候我们需要的空间大小在程序运行的时候才能知道,那数组的编译时开辟空间的方式就不能满足了就需要用到更为灵活的动态内存了动态内存是在堆区申请的malloc返回的指针是void*类型的,同时我们使用动态内存时通常知道我们所需要的类型所以一般会在使用时强转成我们需要的类型:int* p=(int*)malloc(20);申请20个字节的空间强制类型转换成int*类型并原创 2023-10-11 19:35:05 · 70 阅读 · 1 评论 -
指针与数组题目分析
5.&arr,取出整个数组的地址(此处也可称呼为数组首元素地址,因为数组地址和数组首元素地址的值是相同的,不过类型不同,这里用不到类型的概念,故相同),将数组内所有元素计算在内,'\0'不确定出现在什么位置,故为。6.&arr+1,,取出整个数组的地址+1,跳过整个数组,然后开始计算'\0'之前的有效字符个数,'\0'不确定出现在什么位置,但又因为跳过数组arr,故为。7.&p[0]+1,取出字符串首元素地址+1,跳过一个元素,计算'\0'之前的有效字符个数,在字符串末尾还有一个'\0',故为。原创 2023-09-24 22:33:25 · 72 阅读 · 1 评论 -
自定义类型(结构体)
初始化时,结构体成员需要使用,隔开。原创 2023-10-07 19:44:43 · 153 阅读 · 1 评论 -
数据在内存中的存储(整数)
首先我们先简单了解一下基本的数据类型char //字符数据类型 1(字节)short //短整型 2int //整型 4long //长整型 4/8long long //更长的整型 8float //单精度浮点数 4double //双精度浮点数 8整型字符存储和表示的时候本质上使用的是ASCII值,ASCII值是整数,字符类型也归类到整型家族char类型可分为signed char(有符号)unsigned char(无符号)(有些数据只需要正数:年龄...;原创 2023-09-15 12:53:36 · 74 阅读 · 0 评论 -
ASCII值的用处及其对应符号的打印方法
ASCII值的用处及其对应符号的打印方法原创 2022-10-20 23:45:52 · 1139 阅读 · 0 评论 -
goto函数的用法,简单函数的定义和调用
goto函数的用法,简单函数的定义和调用原创 2022-11-03 20:16:00 · 2156 阅读 · 0 评论 -
关于10进制转换8,16进制以及double,float类型保留小数点
关于10进制转换8,16进制以及double,float类型保留小数点原创 2022-10-18 21:41:28 · 712 阅读 · 0 评论