C
C语言
列队猫
须知少日拿云志,曾许人间第一流
展开
-
【C语言】类型提升 隐式类型转换规则
1.在表达式中char和unsigned char、short和unsigned short 将会被自动提升为int类型2.在包含两种数据类型的任何运算中,低级别的数据类型将提升为较高级别的数据类型从低到高:long double 、double、float、unsigned long long 、long long、unsigned long、long、unsigned int、int当long和int具有相同位数时(不同编译器环境下int的长度不同),unsigned int比long拥有更高级原创 2020-10-30 09:40:30 · 551 阅读 · 0 评论 -
【C/C++】小数的输出 %e的用法 用科学计数法输出数据 %e输出00
小数的输出 %ede upngfa%e是printf的格式控制字符,用于指定浮点类型数据使用指数形式输出浮点类型分为整数部分和小数部分,它们由点号.分隔,例如 0.0、75.0、4.023、0.27、-937.198 -0.27 等都是合法的小数,这是最常见的小数形式,我们将它称为十进制形式。此外,小数也可以采用指数形式,例如 7.25×102、0.0368×105、100.22×10-2、-27.36×10-3 等。任何小数都可以用指数形式来表示。C语言同时支持以上两种形式的小数。但是在书写时,C原创 2020-09-17 10:36:35 · 47661 阅读 · 0 评论 -
【C语言】参数传递使数组名退化为指针
引入做题的时候发现了一道题,想了很久也没有想出来与给出算法相符合的思路最后写了个可以勉强得出结果,但是好像不怎么对的方法因为题目给出的变量都已经使用过,所以只能使用数组名作为增量向后遍历但是这时就出现了问题,数组名竟然不指向首地址元素了,事后想想也知道如果一直指向首元素那么显然不能通过这种自增数组名的方式遍历数组在main函数定义数组并使用数组名自增时,编译器会报错,那为什么在while循环中可以自增?是因为while有神奇的魔力吗?显然不是,是因为在参数传递的时候,数组名在传递过程中发生了“原创 2020-09-13 16:01:00 · 819 阅读 · 2 评论 -
【C语言】scanf%d后加空格 scanf吃空白行为 使用scanf连续输入多个回车依旧无效原因
scanf的语法格式scanf(格式控制(参数表列),地址表列)地址表列,由若干个地址组成的表列可以为变量地址,或字符串首地址,如&a格式声明(参数表列),以%开始,以一个格式字符结束,中间可以插入附加字符如果在格式控制字符串中含有除格式声明以外的字符,要在输入时在相应的位置输入相同的字符输入字符时在两个数值之间需要插入空格或其他分隔符以区分数值scanf"吃空白"行为scanf()会进行一个“吃空白”的操作,也就是把空格、回车、制表符全都吃掉scanf()默认把空白作为分割多个输原创 2020-08-22 14:26:18 · 9530 阅读 · 1 评论 -
【C笔记】C语言知识点
链接 C语言代码经过编译以后,并没有生成最终的可执行文件(.exe 文件),而是生成了一种叫做目标文件(Object File)的中间文件(或者说临时文件)。目标文件也是二进制形式的,它和可执行文件的格式是一样的。对于 Visual C++,目标文件的后缀是.obj;对于 GCC,目标文件的后缀是.o。 编译只是将我们自己写的代码变成了二进制形式,它还需要和系统组件(比如标准库、动态链接库等...原创 2020-04-03 13:40:01 · 279 阅读 · 0 评论 -
【C语言】c语言中auto、static、extern关键字作用及其对变量和函数的作用
每一个变量和函数都有两个属性,数据类型和数据的存储类别存储类别auto自动的动态的分配存储空间数据存储在动态存储区中函数中的形参和在函数中定义的局部变量包括在复合语句中定义的局部变量调用该函数时,系统会给这些变量分配存储空间,在函数调用结束时就自动释放这些存储空间,auto可以省略,大部分变量都是自动类型不在编译时赋初值,而是在函数调用时进行赋初值每一次函数调用重新给一次初值,相当于执...原创 2020-04-03 13:49:20 · 700 阅读 · 0 评论 -
【c语言】内存分区(内存布局)
动态存储和静态存储动态储存 动态储存是指在程序运行期间根据需要进行动态的分配 函数形参,自动变量(没有用static声明的变量),函数调用时的现场保护和返回地址,对以上这些数据,在函数调用开始时分配动态存储空间,函数结束时释放这些空间,这种分配和释放,是动态的,如果在一个程序中两次调用同一个函数,则分配的局部变量的储存空间可能是不相同的静态储存 静态储存是指在程序运行期间由系统分配固定的存储空间 全局变量和静态变量(用static声明的变量)全部存放在静态存储区中,在程序开始执行时,给变原创 2020-06-30 19:17:42 · 1737 阅读 · 0 评论