C-关键字,标识符,注释

作者:网络    软件教程库   2020-05-13

一.关键字:c语言中提供了有特殊含义的符号,也叫做保留字。

c语言中一个32个关键字,这些关键字都被赋予了特殊的含义,绝不可以使用它们作为变量名或者函数名。

auto   double   int   struct   break     else   long   switch

case   enum   register   typedef   char   extern   return   union

const   float   short   unsigned   continue   for   signed   void

default   goto   sizeof   volatile   do     if     while   static

关键字的特征

1 全部都是小写

2 在开发工具或者智能文本编辑工具中会显示特殊颜色。默认情况下,c语言中的所有关键字在xcode中都会显示紫褐色

二.标识符

标识符就是在程序中自定义的一些符号和名称。要跟关键字区分开来:关键字是c语言默认提供的符号,标识符是程序员自定义的。

标识符的作用

(1) 标识符,从字面上理解就是用来标识某些东西的符号,标识的目的就是为了将这些东西区分开来

(2) 其实,标识符的作用就跟人类的名字差不多,为了区分每个人,就在每个人出生的时候起了个名字

(3) c语言是由函数构成的,一个c程序中可能会有多个函数,为了区分这些函数,就给每一个函数都起了个名称。函数的名称就是标识符的一种。除了函数,变量的名称也是标识符。

三.命名

命名规则(一定要遵守)

只能由26个英文字母的大小写、10个阿拉伯数字0~9、下划线_组成

严格区分大小写,比如test和test是2个不同的标识符

不能以数字开头

不可以使用关键字作为标识符

命名规范

1.尽量起个有意义的名称,比如一个完整的英文单词,别人一看这个名称就能才能这个标识符的作用。如果不懂英文,你也可以用拼音,尽量不要起像abcde、sfsdfsdf等这类看起来没有意义的名称

2.如果标识符中含有多个单词,可以使用驼峰标识(除开第一个单词,后面每个单词的首字母都是大写):firstname、myfirstname,或者使用下划线_来连接:first_name、my_first_name

常见的标识符命名错误

合法标识符

非法标识符

注释

fromno12

from#12

标识符中不能使用#符号

my_boolean

my-boolean

标识符中不能使用-符号,应使用下划线_代替

obj2

2ndobj

标识符不能使用数字开头

myint

int

int是内建关键字

jack_rose

jackrose

符号不能出现在标识符中

gui

g.u.i

标识符内部需要出现.分隔符

四.注释

1. 什么是注释

1)注释是在所有计算机语言中都非常重要的一个概念,从字面上看,就是注解、解释的意思

2)注释可以用来解释某一段程序或者某一行代码是什么意思,方便程序员之间的交流。假如我写完一行代码后,加上相应的注释,那么别人看到这个注释就知道我的这行代码是做什么用的

3)注释可以是任何文字,也就是说可以写中文

4)在开发工具中注释一般是豆沙绿色

2. 单行注释

1) 单行注释以两个正斜杠开头,也就是以//开头,只能注释一行,从//开始到这行的结尾都是注释的内容

2) 任何地方都可以写注释:函数外面、里面,每一条语句后面

3.多行注释

多行注释以/*开头,以*/结尾,/*和*/中间的内容都是注释

4. 注释的作用

1 被注释的代码不会参与编译

l 注释是写给人看的,当编译程序的时候,并不会将注释编译到.o目标文件中

l 从.o文件的大小可以间接看出注释后的代码并没有被编译

2 检查代码的作用

3 排除错误

c-关键字,标识符,注释

原文地址:http://www.cnblogs.com/rosered/p/4471455.html

软件教程库 该篇文章地址:https://www.itjcku.com/9999/1091367.html

阅读全部内容


Tags:关键字标识符注释

返回首页



推荐内容

C-基本概念

一.程序结构 1.c 程序结构:任何一个c程序都是由一个或小个程序代码块组成,每个小程序都有自己的功能,一般称这些小 ...

应该具备的能力

1. 学习能力(learning ability)   有些东西不懂很正常,从不懂到懂,从懂到精通,自己想想,原来不会的 ...

Apache-rhel5.8环境下编译安装

apache安装过程 step 1:安装包gcc或gcc-c++# yum install gcc#yum insta ...

OpenWrt学习目标

最近在研究openwrt,总感觉这一看一点那也了解一点,没有目的,也没有重心。 这里,给自己拟定一个目标,就朝着这个目标 ...

HelloKiki(hdu3579+不互质的中国剩余定理)

hello kiki time limit:1000msmemory limit:32768kb64bit io ...

android环境下摄像头数据采集及显示

以前项目涉及些摄像头预览及数据处理操作,当时的需求是除了做摄像头预览外,还要显示文字、个性图像等,当初在查找资料实 ...

uva10003CuttingSticks简单区间dp

// uva 10003 cutting sticks 区间dp // 经典的区间dp // dp(i,j)表示切割小木 ...

Go的语言特性总结

写在前面: 近来关于对golang的讨论有很多,七牛的几个大牛们也断定go语言在未来将会快速发展,并且很可能会取代ja ...

golang控制channel的出入口

golang控制channel的出入口 我们常常使用channel来在多个goroutine之间做数据通讯,但是cha ...

UVA10479TheHendrieSequence规律

题目大意:一个序列,刚开始由0变到了1,接着往后一个个变化下去 变化的规则是,如果当前数是k,就在这个序列的最后面加上 ...

在不是Activity类中调用Toast和Dialog

有时候我们需要在非activity类中处理一些逻辑,显示toast对话框或者是弹出一个dialog,但是在非activi ...

查询Oraclesql语句中绑定变量值的方法

alter session set nls_date_format = #39;yyyy-mm-dd,hh24:mi:s ...

Hdoj1588GaussFibonacci【矩阵快速幂】

gauss fibonacci time limit: 1000/1000 ms (java/others) m ...

Hdoj5195DZYLovesTopologicalSorting【拓扑】+【线段树】

dzy loves topological sorting time limit: 4000/2000 ms (jav ...

【转自mos文章】使用单条sql来查询出awr中的syatemstatistics

使用单条sql来查询出awr中的syatem statistics 参考自: how to monitor system ...

I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之u-boot移植

前段时间就开始学习i.mx6q了,但是最近工作实在是忙,间断了一些时间了。为了提高移植效率,还是考虑移植freescal ...

eclipse应用技巧

最近发现eclipse作为ide还是有很多值得探索的使用技巧的,转载一下他人整理好的资源以做分享。 快捷键的使用,加速 ...

Mysql创建数据库的排序规则中文选择哪种编码

mysql中文编码 mysql创建数据库的排序规则 中文 选择哪种编码原文地址:http://blog. ...

线性表简述

一、简单实现增,删,改、查 package datatructs; /** * 表接口 */ public int ...

android测试本地服务调试流程

我今天调试的整个过程 1,安卓发现连不上本地的tomcat 2,使用浏览器直接尝试,发现可以连上 3,怀疑是安卓app和 ...

设计模式1

静态工厂模式,工厂方法模式,抽象工厂模式 工厂方法改进了添加新产品时,静态工厂不满足的开-闭原则;而抽象工厂满足了当产品 ...

c语言文件操作总结

#includelt;stdio.hgt; /********************************** ...

(c#)如果添加的字段中已经有了身份证号码,则年龄和性别和出生年月可得

//把界面文本框里面的身份证号进行提取,以二代身份证为例 model.ecardid = txt_cardno. ...

Scrum时间估算

在新公司里,不懂软件工程的产品经理经常逼迫研发人员作出很不靠谱的时间估算。常见场景有下面这些: 需求未细化的情况下要求给 ...

C++11中uniforminitialization和initializer_list

c++11中出现了uniform initialization的概念: int a1 = {1};//ok int a ...

关于Scrum

最近某些产品经理发出下两周的工作计划的时候,喜欢带上sprint这个字眼,看上去貌似是要走敏捷开发这一套,只可惜,我觉得 ...

输入输出简单解释

;汇编指令,表示程序将被汇编成能在intel386系列及以上的计算机上运行.386;model flat 表明程序使用保 ...

2015第18周五问题即机会

问题即机会,当一切问题都不存在的时候,请问你的机会在哪里? 你能达到怎样的境界,取决于你怎样认识这个世界。对于问题,有人 ...

solr配置方案

http://www.sjsjw.com/kf_cloud/article/44_5945_1823.asp cento ...

什么是二维码?

二维码,业界当然是人人听说,人人用过。 这个话题,我倒是百感交集,我一直认为,我有一种二维码情节。 一方面, 我自认 ...


本网站部分内容来自互联网,版权归原作者所有,文章内容仅代表原作者个人观点。如有侵权请联系我们删除 电子邮件 itjcku@foxmail.com