C语言
文章平均质量分 50
言念君君子
这个作者很懒,什么都没留下…
展开
-
C语言结构体的内存对齐以及指针访问
在学C和使用C的道路上,我遇见了许许多多有趣的细节,因为不想忘记,所以我把它们一个个的依次记录在这里,并且将坚持记录。我知道或许这里的很多知识对于以后的我来说或许显得无比幼稚,乏善可陈。但,或许它们是我以后生活中难能可贵的回忆。记录此文,仅以镜鉴,或者纪念。这是一个目录^_^1.结构体的内存对齐a.结构体的一般情况b.结构体嵌套3.一些其他细节2.结构体指针的两种访问成员方法1.结构体的内存对齐a.结构体的一般情况今天在写题目的时候,看到了一道很有趣的题目:若有定义struct st.原创 2021-05-13 00:02:43 · 1054 阅读 · 0 评论 -
C语言逗号运算符
在C语言中,逗号运算符虽然不起眼,但也是运算符的一种,而且在所有运算符中,逗号运算符的优先级是最低的。逗号用来连接两个表达式,并以其右边的表达式的值作为它的结果。逗号的优先级是所有运算符中最低的,所以它两边的表达式会先计算;逗号的组合关系是自左向右,所以左边的表达式会先计算,而右边的表达式的值就留下来作为逗号运算的结果。因此我们有下面这个例子:#include<stdio.h>int main(){ int a=1+2,3+4; printf("%d",a); return原创 2021-01-23 09:04:53 · 2864 阅读 · 0 评论 -
C语言逻辑运算符
在C语言中,逻辑运算符有&&、||、!&&表示“与”的意思,需要两端的表达式的值都为true,该式的值才为true。||表示“或”的意思,两端的表达式的值只要有一端为true,该式的值就为true。!表示“非”的意思,将该式的真值换成相反的真值,即false和true互换。但是在C99里有这样的一个名为“短路”的特性使用&&时,如果左边false则右边不会执行使用||时,如果左边true则右边不会执行&&运算符,举例:#in原创 2021-01-23 09:04:05 · 28694 阅读 · 1 评论 -
C语言的自增自减运算符
简单去理解,C语言的自增自减运算符的最终结果就是对自身进行加一和减一操作。但是当++、--作为后缀时则具有延后性,可能对程序有一些副作用,并且其的优先级也会对程序产生一定的影响。举例:#include <stdio.h>int main(){ int a=0; if(++a) printf("%d",a); printf("%d",a--); printf("%d",a); return 0;}输出结果是:110在这里充分展示了++、--在变量的前缀和后缀时的作用原创 2021-01-23 00:31:30 · 1338 阅读 · 0 评论 -
C语言选择结构的执行条件
在C语言中,有些细节常常被忽略:选择结构的执行条件我们知道,if()和else if()是判断程序是否执行的函数。需要注意的是,这两个函数判断的是括号内的值是逻辑真(true)还是逻辑假(false),如果为逻辑真,则执行,如果为逻辑假,则不执行。并且规定:0代表逻辑真,非0代表逻辑假(包括负数)。有以下例子:#include<stdio.h>int main(){ int a=0; if(a) printf("false"); if(!a) printf("tru原创 2021-01-23 00:06:14 · 531 阅读 · 0 评论 -
C语言自创函数
为什么要采用自创函数?在设计较复杂的程序时,一般采用自顶向下的方法,将问题划分为几个部分,各个部分再进行细化,直到分解为较好解决问题为止。模块化程序设计是指在进行程序设计时将一个大程序按照功能划分为若干小程序模块,每个小程序模块完成一个确定的功能,并在这些模块之间建立必要的联系,通过模块的互相协作完成整个功能的程序设计方法。在C语言中,使用自创函数可以很方便地解决此类问题,下面是一个代码样例:#include <stdio.h>int plus(int x,int y); //此处原创 2021-01-22 19:20:26 · 6786 阅读 · 2 评论 -
简要了解C程序
下面是一段C语言的样例代码#include <stdio.h> //头文件int sayHello(void); //函数的声明/*主函数*/int main(){ sayHello(); //调用函数 return 0; //程序的出口}/*自创函数*/int sayHello(void) //函数的定义{ printf("Hello World!");}C语言的基本单位是函数,main()函数是主函数,程序由mai原创 2021-01-22 17:12:53 · 116 阅读 · 0 评论