C语言标识符关键字_c语言标识符关键字有哪些

C语言标识符关键字_c语言标识符关键字有哪些一、关键字1.什么是关键字关键字就是C语言提供的有特殊含义的符号,有些地方也叫做“保留字”。 2.一共有哪些关键字C语言一共提供了32个关键字,这些关键字都被C语言赋予了特殊含义。autodoubleintstructbreakelselongswitchcaseenumregistertypedefcharexternreturn

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

一、关键字

1.什么是关键字

关键字就是C语言提供的有特殊含义的符号,有些地方也叫做“保留字”。

 

2.一共有哪些关键字

C语言一共提供了32个关键字,这些关键字都被C语言赋予了特殊含义。

复制代码
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
复制代码

大致浏览一遍即可,不用去百度每个关键字的作用,这些关键字以后会经常用到的,到时候你想不记住都难。

 

3.如何辨别关键字

这些关键字会经常跟其他符号混在一起使用,一个程序里面这么多英文符号,我怎么知道那些是关键字呢?关键字有2大特征:

1> 全部都是小写

2> 在开发工具或者智能文本编辑工具(比如UltraEdit)中会显示特殊颜色

比如下面这段C程序在UltraEdit中呈现的样子

C语言标识符关键字_c语言标识符关键字有哪些

在这段代码中,只有intreturn是关键字,C语言中的所有关键字在UltraEdit中都会显示蓝色!可以看出,main并不是关键字。至于intreturn究竟有什么特殊含义,这里先不做讨论,后面会详细介绍。

 

二、标识符

1.什么是标识符

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

 

2.标识符的作用

1> 标识符,从字面上理解就是用来标识某些东西的符号,标识的目的就是为了将这些东西区分开来。其实,标识符的作用就跟人类的名字差不多,为了区分每个人,就在每个人出生的时候起了个名字。

2> 上一篇文章说到:C语言是由函数构成的,一个C程序中可能会有多个函数,为了区分这些函数,就给每一个函数都起了个名称。函数的名称就是标识符的一种。除了函数,以后还会学到“变量”这个概念,变量的名称也是标识符

C语言标识符关键字_c语言标识符关键字有哪些

因此,上面的代码中:intreturn是关键字,main是标识符

 

3.标识符命名规则

标识符是由程序员自定义的,但是不能随便命名,它有以下几点命名规则:

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

下面的标识符都是正确的:

test1    Mike2jack   My_tExt  

下面的标识符都是错误的:

test!32   haha(da)tt   哈哈_text

 

2> 严格区分大小写,同一段英文字母的大写和小写是两个不同的标识符。

比如:main和Main是两个不同的标识符

 

3> 不能以数字开头

下面的标识符都是错误的:

123haha  78text  98111

 

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

下面的函数是错误的:

1 int int()
2 {
3     return 0;    
4 }

函数的名称是标识符的一种,而第1行的函数名称叫做int,int是C语言中的关键字,这是不合法的,肯定会报语法错误。

 

4.标识符命名规范

这个命名规范,你不一定要遵守。不过呢,90%的优秀程序员都是按照这个规范去走的。

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

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

 

三、注释

1.什么是注释

  • 注释是在所有计算机语言中都非常重要的一个概念,从字面上看,就是注解、解释的意思。
  • 注释可以用来解释某一段程序或者某一行代码是什么意思,方便程序员之间的交流。假如我写完一行代码后,加上相应的注释,那么别人看到这个注释就知道我的这行代码是做什么用的。
  • 注释可以是任何文字,也就是说可以写中文。

注意:直接在代码中写上一大段中文是不行的,编译器会报错

1 这是一个主函数,C程序的入口点
2 int main() 
3 {
4     return 0;
5 }

第1行写了一段中文,用来解释main函数的作用,但是这段代码是不能编译成功的。第1行的中文并不叫注释,注释有它特定的格式。

 

2.注释的种类

C语言中一共有2种注释:单行注释、多行注释。大部分高级语言都有这2种注释。

1> 单行注释

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

复制代码
1 #include <stdio.h>
2 
3 // 这是一个主函数,C程序的入口点
4 int main() 
5 {
6     // 这句代码可以在屏幕输出Hello World这一串文字
7     printf("Hello World");
8     return 0;
9 }
复制代码

第3行、第6行都是注释,注释在开发工具中一般都是绿色的。可以看出,这里第3行的注释是用来解释第4行代码的,第6行的注释是用来解释第7行代码的。一般就是这样写单行注释,用来解释某一行代码的作用。

 

注释也可以写在某条语句的后面

复制代码
1 #include <stdio.h>
2 
3 // 这是一个主函数,C程序的入口点
4 int main() 
5 {
6     printf("Hello World"); // 这句代码可以在屏幕输出Hello World这一串文字
7     return 0;
8 }
复制代码

第6行分号;后面的绿色文字都是注释。

 

如果将//放到printf的前面,那么整个第6行都属于注释。

复制代码
1 #include <stdio.h>
2 
3 // 这是一个主函数,C程序的入口点
4 int main() 
5 {
6     // printf("Hello World"); 这句代码可以在屏幕输出Hello World这一串文字
7     return 0;
8 }
复制代码

你会发现整个第6行都变成了绿色,说明整个第6行都是注释。

 

2> 多行注释

//只能用来注释一行文字,如果有多行文字都需要注释,那么就可以用多行注释。多行注释以/*开头,以*/结尾,/*和*/中间的内容都是注释。

复制代码
1 /*
2  作者:MJ
3  描述:第一个C语言程序
4  作用:这是一个主函数,C程序的入口点
5  */
6 int main() 
7 {
8     return 0;
9 }
复制代码

第1行到第5行的内容都是注释

 

3.注释的嵌套

1> 单行注释可以嵌套单行注释、多行注释

1 // 哇哈哈 // 呵呵呵
2 
3 // /* fsdfsdf */  // sdfsdfsd

这2行的所有内容都是注释

 

2> 多行注释可以嵌套单行注释

1 /*
2  // 作者:MJ
3  // 描述:第一个C语言程序
4  作用:这是一个主函数,C程序的入口点
5  */

这几行的所有内容都是注释

 

3> 多行注释不能嵌套多行注释

复制代码
1 /* 哈哈哈
2  
3  /*
4    嘻嘻嘻
5  */
6 
7   呵呵呵 */
复制代码

你会发现只有第1到第5行才是注释,第7行并不属于注释。因为/*找到第一个*/后就算注释结束了,而第1个*/在第5行。

 

4> 下面的写法是错误

1 // /*
2     哈哈哈
3  */

只有第1行是注释,第2~3行都不是注释

 

4.注释的细节

1> 注释是写给人看的,不是给计算机看的。计算机怎么可能看得我们写的中文嘛。因此,当编译程序的时候,并不会将注释编译到目标文件中

换句话说:被注释掉的语句是不会被执行的。

1 int main() 
2 {
3     // printf("Hello");
4     return 0;
5 }

第3行的语句被注释掉了,因此,运行程序的时候,并不会执行第3行的语句,屏幕上没有任何输出。

2> 要养成写注释的良好习惯。绝大部分项目经理检查下属代码的第一件事就是看有没有写注释,也有很多公司的机试也会检查注释(机试就是给你一道编程题、一台电脑,在规定时间内解题)。

3> 为什么注释这么重要呢?

  • 今天,你写了几百行代码,很高兴,做出了一个非常不错的功能,但是,忘了写注释。一个星期过后,你再回去看那一段代码,你可能完全看不懂了,这是很正常的事。如果你写了注释,那情况就不一样了,注释可以帮助你回顾代码的作用。
  • 你在某家公司待了1年多,写了10几万行代码,但是你不写一点注释。有一天你离职了,新的员工接手你做的项目,他首先要做的事情肯定是要读懂你写的代码。可是你一点注释都没写,10万行代码,全部都是英文,这会让这位新员工非常地蛋疼。每个人都有自己的思想,写代码的思路肯定是不一样的,看别人写的代码是件非常痛苦的事情,特别是没有注释的代码。你不写注释的做法会大大降低公司的开发效率。因此,所有的正规公司都非常重视注释。

 

5.注释的隐藏功能

1> 排错

其实,如果你利用得当的话,注释不仅仅是可以用来解释程序,还可以用来排除错误。

比如下面的代码

复制代码
1 #include <stdio.h>
2 
3 int main()
4 {
5     printf("111\n");
6     printf("222\n")
7     printf("333\n");
8     return 0;
9 }
复制代码

编译程序,你会发现编译失败。这个时候你可以将比较可疑的代码给注释了,比如注释第6行,因为感觉第6行好像少了点什么东西

复制代码
1 #include <stdio.h>
2 
3 int main()
4 {
5     printf("111\n");
6     // printf("222\n")
7     printf("333\n");
8     return 0;
9 }
复制代码

再编译一遍,发现编译成功了。说明就是第6行代码出错了!!!

 

2> 检查代码的作用

在工作中,偶尔会遇到自己不会做的功能,这时候我们就要去网上找一些别人写好的代码来填补自己的项目。但是别人写的代码不可能完全符合我们的需求啊,于是需要裁剪部分有用的代码出来,怎么知道哪一部分是有用的代码呢?那么你就要搞清楚每一行代码的作用。这个时候,我们利用注释来弄清楚每一行代码的作用。

比如,下面这段程序,我想知道第3行代码的作用

1 int main() 
2 {
3     printf("Hello");
4     return 0;
5 }

这个时候你可以先把程序运行一遍,看看运行效果,运行效果就是:在屏幕上输出了Hello这一串内容。

接着你把第3行代码注释了

1 int main() 
2 {
3     // printf("Hello");
4     return 0;
5 }

然后再运行一遍程序,发现屏幕上并没有输出以前的Hello。说明第3行代码的作用就是:在屏幕上输出了Hello这一串内容!!!总结来说,就是把注释后跟注释前的运行效果做一个对比,看看有没有少了什么效果,如果少了某些效果,说明被注释代码的作用就是实现这个少掉的效果。这句话可能有点绕,好好体会一下,对你大有帮助!

 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/186269.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • mac 安装ll命令[通俗易懂]

    mac 安装ll命令[通俗易懂]mac安装ll命令mac-bash:ll:commandnotfound在linux系统下我们经常使用ll、la命令。但在mac系统时缺没有。提示:-bash:ll:commandnotfound。这是因为ll、la不是真的命令,而是一些常用命令和参数搭配的别名。所以我们在MacOS下配置下就好了。1、跳到个人目录下面localhost:~huangfy20$cdlocalhost:~huangfy20$pwd/Users/huangfy202、打开.bash

  • plc上位机软件编程_有上位机还必须用plc吗

    plc上位机软件编程_有上位机还必须用plc吗1、PLC的发展历程在工业生产过程中,大量的开关量顺序控制,它按照逻辑条件进行顺序动作,并按照逻辑关系进行连锁保护动作的控制,及大量离散量的数据采集。传统上,这些功能是通过气动或电气控制系统来实现的。1968年美国GM(通用汽车)公司提出取代继电气控制装置的要求,第二年,美国数字公司研制出了基于集成电路和电子技术的控制装置,首次采用程序化的手段应用于电气控制,这就是代可编程序控制器,称Progra…

  • 解决cookie跨域访问_cookie 跨域

    解决cookie跨域访问_cookie 跨域浏览器对于javascript的同源策略(请求的url地址,必须与浏览器上的url地址处于同域上,也就是域名,端口,协议相同.)的限制,例如a.cn下面的js不能调用b.cn中的js,对象或数据(因为a.cn和b.cn是不同域),但是在前后端分离时我们经常会把服务端和前端放到不同域上,这时就需要跨域了.今天记录的是cookie的跨域访问。问题在此之前一直以为传统的服务器使用se…

  • mac Python安装pybloomfilter 出现找不到libcrypto的问题

    mac Python安装pybloomfilter 出现找不到libcrypto的问题获取新的库brewupdate&&brewupgrade&&brewinstallopensslcd/usr/local/Cellar/openssl/1.0.2t/libsudocplibssl.1.0.0.dyliblibcrypto.1.0.0.dylib/usr/local/lib/建立新的连接sudoln-sli…

  • Laravel5.3使用学习笔记—中间件

    Laravel5.3使用学习笔记—中间件

    2021年10月22日
  • 计算机网络 | 一文搞懂什么是TCP/IP协议[通俗易懂]

    什么是TCP/IP协议?计算机与网络设备之间如果要相互通信,双方就必须基于相同的方法.比如如何探测到通信目标.由哪一边先发起通信,使用哪种语言进行通信,怎样结束通信等规则都需要事先确定.不同的硬件,操作系统之间的通信,所有这一切都需要一种规则.而我们就将这种规则称为协议(protocol).也就是说,TCP/IP是互联网相关各类协议族的总称。TCP/IP的分层管理TCP/IP协…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号