社区
C语言
帖子详情
关于分号(“;”)的用法
shycpp
2003-08-20 04:14:03
在C/C++语言中凡是“语句”都要加“;”,但为什么复合语句不加“;”。函数的定义不加,而结构、类的定义加。如:
class stu{
char name[33];
int age;
};
void output()
{
……
}
如果说是规定,那么为什么要这样规定?
...全文
283
11
打赏
收藏
关于分号(“;”)的用法
在C/C++语言中凡是“语句”都要加“;”,但为什么复合语句不加“;”。函数的定义不加,而结构、类的定义加。如: class stu{ char name[33]; int age; }; void output() { …… } 如果说是规定,那么为什么要这样规定?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lybapple
2003-08-23
打赏
举报
回复
好有见地。
davidwoo
2003-08-23
打赏
举报
回复
此类为题和编译器的设置有关
编译器只编译符合他要求的语句.
否则报错
maxcai
2003-08-23
打赏
举报
回复
是啊,与编译器有关——第一个编译器
金笛子
2003-08-23
打赏
举报
回复
很好细致好没错很多语法都有编译器有关我觉得有必要去看看啊
luckychange
2003-08-23
打赏
举报
回复
看似简单问题,其实背后有着一些深层次的道理~
这就涉及到编译原理方面的知识,加不加分号主要看编译器是否能很方便地分辨别出语句、定义之类的东东。如果每次碰到}后面跟空格或回车(空格一般都滤掉了),都认为是复合语句,那类定义怎么办,岂不报错?所以碰到}后跟;就判断为定义,这样就不会搞错了~
也可以设计编译器认为每条语句强制一行,那就没必要用;了,如BASIC……(碰到回车符认为语句结束,而不是;)
hhxu
2003-08-23
打赏
举报
回复
要是让编程语言统一多好,哪有这么多的语言要学???
GhostAdz
2003-08-23
打赏
举报
回复
规则用多了 (吐啊吐啊的~~~)就习惯了
一开始总是充满好奇的 之后才发现这些问题并不重要
madasoft
2003-08-23
打赏
举报
回复
你把所有的程序写在一行里,看看是不是会产生歧义,以此来决定加不加。
pzytony
2003-08-20
打赏
举报
回复
简单
xiaoyunet
2003-08-20
打赏
举报
回复
我来解释一下:
语句家;表示语句结束。
为什么类后面要价?请看
class a{}
func1()
{
}
c语言中函数的返回值没有谢默认为int。而上述的代码func1地返回值类型为a;而作者的原意是int。这种错误编译器发现不了。所以要加;这样就可以区别了。还有你可以写
class a{}b;如果没有;编译就不能通过了。
函数后面为什么不用家呢?因为不需要。
wbh0360
2003-08-20
打赏
举报
回复
谁知道,你去问问c++创始人
顿号逗号
分号
和冒号的使用.ppt
顿号逗号
分号
和冒号的使用.ppt
2020中考语文常用标点符号
用法
分号
2020中考语文常用标点符号
用法
分号
分号
的
用法
小学语文·人民教育出版社·课程教材研究所.docx
分号
的
用法
小学语文·人民教育出版社·课程教材研究所.docx
浅谈javascript的
分号
的使用
javascript大括号后面应使用
分号
吗?JS中function 的开头有加感叹号、
分号
是什么意思呢? Js多个文件集成成一个文件后,压缩代码时避免发生语法错误,可以如下处理 一、js 前加
分号
例如:;(function($){…此处...
安装程序自动添加数据库,有两种方法。1.使用数据库脚本,但是脚本的每一个操作完后得加一个
分号
,去掉GO。
安装程序自动添加数据库,有两种方法 1.使用数据库脚本,但是脚本的每一个操作完后得加一个
分号
,去掉GO。 2.使用数据库文件,*.mdf与*.ldf,事先分离好数据库,在项目中添加进来即可。
C语言
69,369
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章