笔记
文章平均质量分 57
dh_kui
一只懵懂的程序猿
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C语言学习之路————枚举、联合体(共同体)
1.枚举枚举就是把有可能得值一一列举出来exp:人的性别,一个星期的天数,枚举像结构体一样,也是一种类型,叫枚举类型,先定义一个枚举类型#include <stdio.h>enum Sex//这就是一种枚据类型的定义{ male, female};int main(){ return 0;]而在没给这些枚举常量成员赋初始值时,它们有默认的值从上到下,依次位0,1,2.....而我们要是给其中一个再类型里就给他定义了初始值,那么其之后的成员依次按原创 2021-10-08 19:34:07 · 296 阅读 · 0 评论 -
c语言学习之路————预处理1.0
我们的程序在从我们的.c源文件到.exe可执行文件会经过编译和链接的过程,在这个过程中有两个环境翻译环境:编译:就是生成.obi目标文件的过程,在这个中项目每一个源文件都会经过编译器生成一个目标文件,再通过链接器,将在所有的目标文件和链接库(静态库、动态库,类似于头文件里的函数库)链接起来生成可执行文件,而编译也分为几个过程预编译、编译、汇编过程才能生成.obj文件。预编译过程会打开头文件,头文件里的内容会被包含到我们的程序源文件中:还会用空格替换掉程序里的注释;还会对#define定义的符号,进行原创 2021-10-24 01:39:08 · 2496 阅读 · 0 评论 -
c语言学习之路————预处理2.0
1.带副作用的宏参数 如果宏的参数中带有改变传过来的参数,形式比如说自增、自减,它可能带有副作用exp:#define MAX(x,y) ((x>y)?(x):(y))int main(){ int a = 10; int b = 20; printf("%d\n", MAX(a++, b++));//21 //printf("%d",(a++>b++)?(a++):(b++)); //这里比较完之后a,b都自增了,输出的较大值b会是21,在输出之后b又自增 p...原创 2021-10-24 15:06:35 · 217 阅读 · 0 评论 -
c语言学习之路————柔性数组
在c99标准中,结构体类型中最后一个元素是未知大小的数组,这个成员就叫做柔性数组成员exp:#include <stdio.h>typedef struct T{ int a; int arr[]; //int arr[0];//这样的定义方式和上面的效果是一样的,都是未知大小的结构体柔性数组,不同的编译器, //会有不同的定义方式}st;int main(){ st* ptr;//st就是经过改变定义的结构体类型名 printf(); r原创 2021-10-14 16:01:20 · 145 阅读 · 0 评论 -
c语言学习之路————动态内存分配(malloc,alloc,realloc)
我们一般了解的内存内部分为三个区:栈区,堆区,静态区栈区:一版存储的的是局部变量,以及函数的形参,基本数据类型定义的变量堆区(动态内存分贝的空间):静态区:全局变量,静态变量(static修饰)今天我学习的是关于堆区的动态内存分配,我们可以按照自己自己的意愿在堆区上开辟自己需要的内存空间,还可以对我们在对u去开辟的空间进行调整。小知识点:在C99标准下有一种规定,在定义数组的时候可以在在定义数组大小的时候放入变量来控制我要开辟数组的大小(变长数组)exp:#include <原创 2021-10-12 21:18:12 · 757 阅读 · 0 评论 -
c语言学习之路————位段
我们通过结构体来讲述位段首先位段的声明和结构体是类似的其实位段的成员是整型和字符型(也是特殊的整型)这个结构体类型里的成员叫位段成员struct A{int a:2;//冒号后面加数字,是位段的一般形式int b:4;};...原创 2021-10-07 20:58:31 · 152 阅读 · 0 评论 -
C语言学习之路————结构体1.0
1.结构体的基本知识结构是一些值的集合,这些值被称为成员变量,结构体的每个成员可以是不同类型的2.结构体的声明 struct tag(标签,也叫结构体名)--->此出没tag叫匿名结构体类型,要注意的是,匿名结构体要及时在结构体类型后定义变量{ //member list(成员列)exp:char a; char str[];};//variable list(变量列)exp:s1,s2;// 首先要提到的是这个锋号,如果没有要定义的变量,要...原创 2021-10-06 22:51:49 · 162 阅读 · 0 评论 -
2021-10-01
c语言学习今日新学会了三种函数:1是strcat(charstr1,charstr2)将str2接到str1的后面注意,这两个字符串是不同的,2是strncat(charstr1,charstr1,size_n)是上一个的特殊情况,不用的是参数个数不同最后要见加上str1的字符串大小,且是准确数字3是strstr(charstr,charstr0)判断后面的字符串是否是前一个子字符串,是的话返回str0在str中出现的位置往后的所有字符串,其实就是返回一个那个位置的地址,或者说是返回的字符串的首字母原创 2021-10-01 20:37:57 · 183 阅读 · 1 评论
分享