首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

常见的C语言编程规范

头文件: 1.头文件中适合放置接口的声明,不适合放置实现。 2.头文件应向稳定的方向包含,产品依赖于平台,平台依赖于标准库。 3. .c/.h文件禁止包含用不到的头文件。...4.每一个.c文件应有一个同名.h文件,用于声明需要对外公开的接口。 5.禁止头文件循环依赖。 6.头文件应当自包含(任意一个头文件均可独立编译)。 7.禁止在extern"C"中包含头文件。...9.只能通过包含头文件的方式使用其他.c提供的接口,禁止在.c中通过extern的方式使用外部函数接口、变量。...6.函数调用不要作为另一个函数的参数使用,否则对于代码的调试、阅读都不利。 7.函数break,return时一定要注意资源的释放,比如释放申请的内存、释放锁。 8.禁止内存操作越界。...(4)自动存储对象的地址不应赋值给其他的在第一个对象已经停止存在后仍然保持的对象(具有更大作用域的对象或者静态对象或者从一个函数返回的对象)。

2.3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    C语言 编程练习22题

    一、题目 1、编一个程序,输入x的值,按下列公式计算并输出y值; 2、已知数A与B,由键盘输入AB的值,交换它们的值,并输出。...3、给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。 4:利用条件运算完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。...5、输入年和月,则输出此年此月的天数,如大月有31天,小月有30天,而闰年的2月有29天,平年则只有28天。...程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。...所谓水仙花数,是指一个三位数abc,如果满足a^3+b^3+c^3=abc,则abc是水仙花数,在屏幕上显示该数。

    7.3K90

    C语言编程常见错误集锦 【下】

    当输入的i值小于等于10时,两者输出结果无区别。当输入的i大于10时,while语句不执行循环体,do-while语句执行一次循环题。...可分解为:b=i;i=i+1; 【第二个区别】 i++ 不能作为左值,而++i 可以 左值是对应内存中有确定存储地址的对象的表达式的值,而右值是所有不是左值的表达式的值。 ?...5、忽略sizeof()和strlen()的区别 ? 6、定义数组时,将定义的“元素个数”误认为是可使用的最大下标 ? C语言中,定义时用a[5],表示a数组中有5个元素。...其下标是从0开始的,数组中最后一个元素是a[4],不存在a[5]。 7、定义数组时误用变量 ? 数组名后用方括号括起来的是常量表达式,可以包括常量和符号常量。即C不允许对数组大小作动态定义。...C中,数组名代表地址 正确的应为: ? 9、同时定义了形参和函数中的局部变量 ? 形参应在函数体外定义,而局部变量应在函数体内定义。 正确的应为: ? ? —END—

    1.6K10

    【编程基础】C语言常见宏定义

    我们在使用C语言编写程序的时候,常常会使用到宏定义以及宏编译指令,有的可能比较常用,有的可能并不是很常用,是不是所有的C语言宏定义以及宏指令你都清楚呢?...# 空指令,无任何效果 #include 包含另外一个文件 #define 定义宏 #undef 取消已定义的宏...#运算符 出现在宏定义中的#运算符把跟在其后的参数转换成一个字符串。 ##运算符 用于把参数连接到一起。预处理程序把出现在##两侧的参数合并成一个符号。...__FILE__ 包含当前程序文件名的字符串 __LINE__ 表示当前行号的整数 __DATE__ 包含当前日期的字符串 __STDC__ 如果编译器遵循ANSI...C标准,它就是个非零值 __TIME__ 包含当前时间的字符串 另外在GCC下面,还有如下的宏定义: __FUNCTION__ 表示当前的函数名 __VA_ARGS__ 表示可变参数输入

    2K80

    c语言编程常见错误集锦 【上】

    C语言区分大小写。习惯上,符号常量名用大写,变量名用小写表示,以增加可读性。 ? 2.忽略变量类型,进行不合法运算 %是求余运算,得到a/b的整余数。...C语言规定以“\0”作为字符串结束标志,它是系统自动加上的,所以字符常量“b”其实包含两个字符'b' '\0',而把它赋给一个字符变量是不行的。 ?...4.忽略了“=”和“==”的区别 C语言中,“=”是赋值运算符,“==”是关系运算符。在此代码中,前者是进行比较,后者是进行赋值。 ?...5.忘记加分号 几乎在所有编程语言中,都是用“;”代表一句或多句语句的结束。 ? 6.多加分号 ? ? ? 7.忘加地址运算符“&” scanf函数的作用是:按照a在内存中的地址将a的值存进去。...编程范

    1.3K10

    【C语言】常见的C语言概念

    什么是C语言 人和人交流使用的是自然语言,就像是汉语、英语、日语。 那人和计算机是怎么交流的呢? 使用计算机语言。...目前已知已经有上千种计算机语言,人们们是通过计算机语言写的程序,给计算机下达指令,让计算机工作的。 C语言就是众多计算机语言中的⼀种,当然C++/Java/Go/Python都是计算机语言。...exe可执行文件 3.2 编译器的对比 常见的C语言编译器都有哪些呢?...main函数是程序的入口 main函数有且仅有一个 即使一个项⽬中有多个.c文件,但是只能有一个main函数(因为程序的入口只能有一个) 第一次写代码,一些常见的错误总结: main被写成了mian...为了不再重复实现常见的代码,让程序员提升开发效率,C语言标准规定了一组函数,这些函数再由不同的编译器厂商根据标准进行实现,提供给程序员使用。

    10310

    【编程基础】C语言内存使用的常见问题

    修改只读数据区内容会引发段错误(Segmentation Fault),但这种低级失误并不常见。一种比较隐秘的缺陷是函数内试图修改由指针参数传入的只读字符串。...但为求安全性而封装检测机制的做法在某种意义上得不偿失,既不及Java等高级语言的优雅,又损失了C语言的简洁和高效。因此,根本的解决之道还是在于设计和编码的审慎周密。相比事后检测,更应注重事前预防。...编程时应重点走查代码中所有操作全局数据的地方,杜绝可能导致越界的操作,尤其注意内存覆写和拷贝函数memset/memcpy/memmove和数组下标访问。...指针可由volatile修饰(尽管并不常见),如中断服务子程序修改一个指向某buffer的指针时。...内存越界导致内存分配失败的情况更为常见。此时,可从分配失败的地方开始回溯最近那个分配成功的malloc,看附近是否存在内存拷贝和数组越界的操作。

    3.4K60

    【C语言】初识C语言(常见的C语言概念)

    缺点是编程复杂,可读性和可移植性差。...汇编语言:采用助记符来代替机器指令的操作码,用地址符号或者标号来代替指令或操作数的地址,也称为符号语言,也是面向机器的低级语言,效率较高,编程较复杂,可读性和可移植性较差 高级语言: 语法接近于人类的自然语言...,比起低级语言易懂易学,可移植性好,编程效率高,但是执行效率没有低级语言高,需要经过编译或解释,C语言就是采用编译的一种高级语言 二.为什么选择C语言 C语言常年霸榜各类高级语言前三,属于基础必学的语言...,其功能强大,而且许多语言都很相似,如果学好C语言,对学习其他语言也有很大帮助 三.编译器的选择 C语言是一门编译型的语言,需要依赖编译器将计算机语言转换成机器能够执行的机器指令 常见的编译器有:msvc...,按ctrl+k,ctrl+u可以取消注释 总结 以上就是今天所要讲的C语言常见的概念,下次讲C语言的数据类型和变量,如果今天的内容有不懂的还请在评论区留言,当然,还有许多不足的地方也请大家多多指正,谢谢

    13510

    C语言经典编程题100例 71~80

    71、编写input()和output()函数输入,输出5个学生的数据记录。 程序分析: 无。...:2 请输入第3个元素的值:3 请输入第4个元素的值:4 请输入第5个元素的值:5 刚刚建立的各个链表元素的值为: 1 2 3 4 5 73、反向输出一个链表。...:2 请输入第3个元素的值:3 请输入第4个元素的值:4 请输入第5个元素的值:5 刚刚建立的各个链表元素的值为: 1 2 3 4 5 74、连接两个链表。...: b a t 排序后的结果为: a b t 80、海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只 猴子把多的一个扔入海中,拿走了一份。...第二只猴子把剩下的桃子又平均分成五份,又多了 一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的, 问海滩上原来最少有多少个桃子? 程序分析: 无。

    1.2K10

    C语言经典编程题100例 11~20

    printf("*"); } } printf("\n"); return 0; } 运行结果: 请输入整数:90 90=2*3*3*5 15、题目:利用条件运算符的嵌套来完成此题...:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。...程序分析: (1)最小公倍数=输入的两个数之积除于它们的最大公约数,关键是求出最大公约数; (2)求最大公约数用辗转相除法(又名欧几里德算法) 1)证明:设c是a和b的最大公约数,记为c=gcd(a,b...),a>=b, 令r=a mod b 设a=kc,b=jc,则k,j互素,否则c不是最大公约数 据上,r=a-mb=kc-mjc=(k-mj)c 可知r也是c的倍数,且k-mj与j互素,否则与前述k,j...例如6=1+2+3,编程找出1000以内的所有完数。

    2.1K20

    C语言经典编程题100例 91~100

    : cyouagain.txt 现在你可以输入你要保存的一些字符,以#结束: cyouagain.cn IT学长 # 执行完程序后,在c文件目录下生成 cyouagain.txt: cyouagain.txt...test 文件: test 文件中的内容如下: 99、有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件C中。...程序分析: 在c文件目录下创建 A.txt 与 B.txt。A.txt中的内容为:123,B.txt中的内容为:abc,然后运行程序。...C.txt。...C.txt 文件中内容: 100、有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,况原有的数据和计算出的平均分数存放在磁盘文件"stud"中。

    1.7K30
    领券