C语言高级
文章平均质量分 88
Sun_虔诚
这个作者很懒,什么都没留下…
展开
-
运算符_9
1、算术操作运算2、逻辑运算3、位运算4、赋值运算5、内存访问符号1、算术操作运算-:左右两边的值都属于同种数据类型,尽量两边的数据类型是一致的。、/、%:,、/:我们大部分的cpu都是不支持的,很多时候看到乘法,没有办法找到一个汇编层进行乘法的。Int a = b * 10;很多时候如果cpu功能很强大,可以用多个周期调用实现,但是效率很低,甚至要利用软件模拟方法去实现乘法,很多时候这个乘法会被编译器编译成软件乘法的方法去调用系统函数,如果写的是裸机的程序,没有操作系统的时候第三方库的原创 2020-12-12 11:08:46 · 176 阅读 · 0 评论 -
关键字_类型修饰符_8
关键字_类型修饰符资源分类:有些内存是可读的有些是可写的,我们一般定义的char a,就是auto char a,就是自动变量,所谓普通变量就是在内存中可读可写中分配的一块区域,如果这个变量定义在函数体中,我们认为这个自动变量实在栈空间中,内存分配的位置实际上跟某些代码的执行流程有关系,比如手机开机的画面,这种的话一般是放在只能读不能写的位置,不希望被别人修改,这时候就需要对内存存放位置和资源存放位置进行限定底层修饰符或者内存修饰符会大量的使用。1、 auto:自动变量修饰符2、 register:寄原创 2020-12-02 23:09:06 · 212 阅读 · 0 评论 -
关键字_逻辑结构_7
关键字_逻辑结构C语言给我们提供程序执行方式的建议符号,cpu是顺序执行的机器,在我们硬件定义了PC指针的概念,一但PC指向了这段内存,cpu很单纯就是把一个指针指向地址,随着CPU指针的不断运行,这个指针的值就会不断的累加,指向那块内存,就把那块内存里面的东西取出来,逐一的进行执行,所以程序怎么存放,cpu就按照这个顺序去执行,但是我们更希望,内存中的代码,我们可以根据情况去运行,有选择地去执行所以就有了分支,循环,某些时候我们需要把一段代码重复执行,比如a+1执行100次,这样子在内存中会占用很大的空原创 2020-12-02 22:51:03 · 244 阅读 · 0 评论 -
关键字_自定义数据类型_6
关键字_自定义数据类型为什么要有自定义数据类型C编译器默认定义内存分配的数据类型不符合实际资源的形式,所以有了自定义数据类型,自定义 = 基本元素(标准数据类型)的集合。我们的标准数据类型只是描述外界数据类型的最小单位,如果描述更负责的数据类型,或者对象,用基本的数据类型是很难满足我们的要求的,C语言也不可能把我要用的全部数据类型进行定义,所以为我们提供了新的数据类型叫自定义数据类型。1、 struct2、 union3、 enum:枚举4、 typedef:别名1、struct:元素之间的和原创 2020-12-02 22:46:06 · 793 阅读 · 0 评论 -
关键字_数据类型_5
关键字_数据类型_5为什么会提出数据类行这个概念?C语的操作对象是什么:资源/内存(内存类型的资源,LCD缓存、LED灯),数据类型是为了限制资源的范围。C语言如何描述这些资源的属性?通过数据类型来描述资源大小的属性。数据类型:资源属性的大小【限制数据大小的一组特殊意义的字符串】,由编译器来定义数据类型的大小,不同的编译器中数据类型的大小是不一样的,所以涉及到数据类型大小的时候,不能回答定值,最终是由编译器来决定的。1、char2、int3、long、short4、unsigned、sign原创 2020-11-28 14:44:27 · 270 阅读 · 0 评论 -
预处理的使用_4
预处理的使用预处理作为整个C语言编译的第一个阶段,要求我们懂一些预处理机制,编一些技巧性地代码,预处理能认识的一些就是# 以及后面跟的关键词,这里不是关键字。1、# include 包含头文件:当前位置把文件内容展开,然后也通过gcc文件编译2、# define 宏 替换3、# define 宏名 宏体(宏名和宏体中至少有一个空格,多一个没有关系),预处理阶段只是替换,不进行语法检测,编译阶段才会进行语法检测,最简单的方法就是加括号,宏体更加安全举例子:# define 5+3prinft(“原创 2020-11-21 07:57:15 · 176 阅读 · 1 评论 -
C语言常见错误举例_3
C语言常见错误举例1、预处理错误2、编译错误3、链接错误预处理错误:这里主要是针对include和define最典型的是inlude #include “”和#include<>,其中“”号这边是从系统文件和自定义中找调用的函数,<>这边是从系统文件中找,我们一般默认"“是引用自定义文件,<>是引用系统文件。举例子:当001.c文件和abc.h在同一目录下在代码中加入abc.h的头文件。001.c使用”"引用abc.h头文件# include <s原创 2020-11-18 00:11:52 · 1121 阅读 · 0 评论 -
C语言的编译过程_2
C语言的编译过程综述:C语言的编译过程可分为1、预处理:比如define;2、编译器(cc1):将预处理后的源文件成汇编语言;3、汇编器(as):将汇编语言翻译成二进制文件;4、链接器(collect2):将二进制文件和系统文件链接起来形成可执行文件。预处理:gcc -E,主要是应用在一些大型的程序当中举例子:gcc -E -o a.i 001.c,将001.c源文件预使用-E选项处理后生成a.i文件。这里以define为例子,编写一段程序,定义define ABC = 10命令如下,vi原创 2020-11-16 23:59:54 · 143 阅读 · 0 评论 -
gcc的使用及常用选项的介绍_1
gcc的使用及常用选项的介绍_1gcc:GNU Compiler Collection是一组编译器套件,原来全名是叫GNU C Compiler,是C语言的编译器,后来随着组织的壮大和发展,囊括了包括C++、 Objective-C、 Fortran、Java编译器,变成了编译套件,所以就变成了GNU Compiler Collection,这里主要是gcc中C语言编译器在linxu系统中(这里的linxu系统是ubuntu 20.04)的使用。1、gcc -v,gcc版本的查看,通过“gcc -v”选原创 2020-11-15 13:49:24 · 523 阅读 · 0 评论