C 语言的基本符号就有 20 多个,每个符号可能同时具有多重含义,而且这些符号之间
相互组合又使得 C 语言中的符号变得更加复杂起来。

符号 名称 符号 名称
逗号 > 右尖括号
. 圆点 ! 感叹号
分号 | 竖线
冒号 / 斜杠
问号 \ 反斜杠
单引号 ~ 波折号
双引号 # 井号
( 左圆括号 ) 右圆括号
[ 左方括号 ] 右方括号
{ 左大括号 } 右大括号
% 百分号 & and(与)
^ xor(异或) * 乘号
- 减号 = 等于号
< 左尖括号 + 加号

注意1:C 语言的注释可以出现在 C 语言代码的任何地方。这句话对不对?
答:不对。
原因:例如:in/*…*/t i;
C 语言里可以有两种注释方式: /* */ 和//。
编译器的确会将注释剔除,但不是简单的剔除,而是用空格代替原来的注释。所以上述例子不会被编译器解析成 int i;
但注意: /*…*/这种形式的注释不能嵌套,如:
/*这是/*非法的*/*/
因为/*总是与离它最近的*/匹配。
出色注释的基本要求
【规则 2-1】注释应当准确、易懂,防止有二义性。错误的注释不但无益反而有害。
【规则 2-2】边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。
不再有用的注释要及时删除。
【规则 2-3】注释是对代码的“提示”,而不是文档。程序中的注释应当简单明了,注释太
多了会让人眼花缭乱。
【规则 2-4】一目了然的语句不加注释。
例如: i++; /* i 加 1 */
多余的注释
【规则 2-5】对于全局数据(全局变量、常量定义等)必须要加注释。
【规则 2-6】注释采用英文,尽量避免在注释中使用缩写,特别是不常用缩写。
因为不一定所有的编译器都能显示中文,别人打开你的代码,你的注释也许是一团乱
码。还有,你的代码不一定是懂中文的人阅读。
【规则 2-7】注释的位置应与被描述的代码相邻,可以与语句在同一行,也可以在上行,但
不可放在下方。同一结构中不同域的注释要对齐。
【规则 2-8】当代码比较长,特别是有多重嵌套时,应当在一些段落的结束处加注释,便于
阅读。
【规则 2-9】注释的缩进要与代码的缩进一致。
【规则 2-10】注释代码段时应注重“为何做(why)”,而不是“怎么做(how)”。
说明怎么做的注释一般停留在编程语言的层次,而不是为了说明问题。尽力阐述“怎么做”
的注释一般没有告诉我们操作的意图,而指明“怎么做”的注释通常是冗余的。
【规则 2-11】数值的单位一定要注释。
注释应该说明某数值的单位到底是什么意思。比如:关于长度的必须说明单位是毫米,
米,还是千米等;关于时间的必须说明单位是时,分,秒,还是毫秒等。
【规则 2-12】对变量的范围给出注释。
【规则 2-13】对一系列的数字编号给出注释,尤其在编写底层驱动程序的时候(比如管脚
编号)。
【规则 2-13】对于函数的入口出口数据给出注释。
关于函数的注释在函数那章有更详细的讨论。

注意2:c语言的接续符和转义符
C 语言里以反斜杠(\)表示断行。编译器会将反斜杠剔除掉,跟在反斜杠后面的字符自动接续到前一行。
但是注意:反斜杠之后不能有空格,反斜杠的下一行之前也不能有空格。
#def\
ine MAC\
RO 这是一条合法的\
宏定义
反斜杠除了可以被用作接续符,还能被用作转义字符的开始标识。
常用的转义字符及其含义:

转义字符 转义字符的意义
\n 回车换行
\t 横向跳到下一制表位置
\v 竖向跳格
\b 退格
\r 回车
\f 走纸换页
\\ 反斜扛符"\"
\' 单引号符
\a 鸣铃
\ddd 1~3 位八进制数所代表的字符
\xhh 1~2 位十六进制数所代表的字符

注意3:左移与右移

注意4:++、--操作符

A) 例子为逗号表达式, i 在遇到每个逗号后,认为本计算单位已经结束, i 这时候自加。
关于逗号表达式与“++”或“--”的连用,还有一个比较好的例子:
int x;
int i = 3;
x = (++i, i++, i+10);

问 x 的值为多少? i 的值为多少?
逗号表达式中, i 在遇到每个逗号后,认为本计算单位已经结束, i 这时候自加。所以,本例子计算完后,i的值为5,x的值为 15。
B) 例子 i 与 10 进行比较之后,认为本计算单位已经结束, i 这时候自加。
C) 例子 i 遇到分号才认为本计算单位已经结束, i 这时候自加。
也就是说后缀运算是在本计算单位计算结束之后再自加或自减。 C 语言里的计算单位大体分为以上 3 类。

注意5:2/(-2)的值是多少

2/(-2)的值为多少? 2%(-2)的值呢?
如果与你想象的结果不一致,不要惊讶。我们先看看下面这些规则:
假定我们让 a 除以 b,商为 q,余数为 r:
q = a/b;
r = a%b;
这里不妨先假定 b 大于 0。
我们希望 a、 b、 q、 r 之间维持什么样的关系呢?
1,最重要的一点,我们希望 q*b + r == a,因为这是定义余数的关系。
2,如果我们改变 a 的正负号,我们希望 q 的符号也随之改变,但 q 的绝对值不会变。
3,当 b>0 时,我们希望保证 r>=0 且 r<b。

C 语言或者其他语言在实现整数除法截断运算时,必须放弃上述三条性质中的至少一条。

大多数编程语言选择了放弃第三条,而改为要求余数与被除数的正负号相同
2/(-2)的值为-1      2%(-2)的值0

参考书籍 《C语言深度剖析》

C语言 —— 符号(C语言的基本符号)相关推荐

  1. 最小的语言符号是A词B语素C音素D义素,全国2009年1月高等教育自学考试语言学概论试题...

    全国2009年1月高等教育自学考试语言学概论试题 课程代码:00541 一.单项选择题(本大题共20小题.每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的.请将其代码填写在题 ...

  2. c语言意义y x 8.0,C语言符号意义(8页)-原创力文档

    . C 语言符号意义大全 32 个关键字及其含义: auto :声明自动变量 一般不使用 double :声明双精度变量或函数 int : 声明整型变量或函数 struct :声明结构体变量或函数 b ...

  3. ld 指令c语言实现,C语言符号、指令表.doc

    C语言符号.指令表.doc C语语语 言言言 符符符 号号号 控控控 制制制 命命命 令令令 表表表 编译指令 编译指令 说明 i n c l u d e 包含另一个文件 d e f i n e 定义 ...

  4. 最小的语言符号是A词B语素C音素D义素,[转载]语言学概论试题 答案

    2003年10月高等教育自学考试 语言学概论试题 课程代码:00541 一.单项选择题(本大题共26小题,每小题1分,共26分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题 ...

  5. 地图符号库的制作方法-s52符号显示库中的矢量符号描述语言

    在做电子海图系统时,大家免不了要去实现S52显示库. 通常地图符号的显示库通过如下几种方法实现: 1. 通过对TrueType符号的扩充: 2. 通过对arcgis中style的扩充: 3. 基于Mi ...

  6. 最小的语言符号是A词B语素C音素D义素,2018年10月自考《语言学概论》模拟试题(8)...

    2018年10月自考考试已经结束,同学们可以开始准备2019年4月自考复习,下面是2018年10月自考<语言学概论>模拟试题(8),了解更多自学考试资讯请锁定自学考试网,更有海量模拟试题, ...

  7. c语言符号txt下载,C语言符号集

    C语言符号集 C语言符号集包括:英文字母.数字和一些有特定含义的标点符号.任何C程序都是由C的符号集里的符号构成具有一定含义的语句,再由这些语句组成程序. 一.字母.数字和下划线 大写英文字母:A-- ...

  8. 最小的语言符号是A词B语素C音素D义素,智慧职教: 下列选项中,定义全文索引的字段的数据类型必须是( )...

    智慧职教: 下列选项中,定义全文索引的字段的数据类型必须是( ) 更多相关问题 [多选题]计算机在信息处理中的作用包括(). A. 数据加工 B. 多媒体技术 C. 通信 D. 智能化决策 [单选题] ...

  9. c语言i10表达式的值是什么,C语言符号的.doc

    C语言符号的 算术运算 运算符说明范例执行结果+加c=a+b:c 等于10-减d=a-b:d 等于6*乘e=a*b:e 等于16/除f=a/b:f 等于4%取余数g=a%b:g 等于0++加1c=c+ ...

  10. 最小的语言符号是A词B语素C音素D义素,高等教育自学考试《语言学概论》试题9.docx...

    高等教育自学考试<语言学概论>试题 一.单项选择题(本大题共20小题.每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的.请将其代码填写在题后的括号内.错选.多选或 ...

最新文章

  1. 如何列出更改了特定文件的所有提交?
  2. linux设置网卡速率
  3. flink sql udf jar包_flink教程flink 1.11 集成zeppelin实现简易实时计算平台
  4. 《C++ Primer 第五版》(第4.11-4.12节)——static_cast,const_cast和reinterpret_cast类型转换, 运算符优先级表
  5. Dart语言基础Map、List、Set操作合辑
  6. apache commons collections CollectionUtils工具类简单使用
  7. 5. PHP APC APCu 安装使用
  8. HTML5基础教程(14)Web SQL 数据库
  9. poj2112,最大流,最优挤奶方案
  10. ftp下载工具,6款能够满足所有需求的ftp下载工具
  11. 试题 算法提高 盾神与条状项链
  12. 利用xpath数据解析爬取百度新闻热榜
  13. 百度Apollo的dreamview的frontend的数据传输部分简单梳理
  14. 营业增加值公式简要解析
  15. 空气清爽才是真正的上班的地方
  16. android手机软件安装位置,改变Android手机软件安装位置方法
  17. 执行HiveSql时报错“FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapRedTa”
  18. ZooKeeper客户端源码(三)——Watcher注册与通知
  19. 【开源推荐】XMM Go语言环境中完全自主实现的第三方内存管理库
  20. 没必要参加嵌入式开发培训班 (学习嵌入式的资料)

热门文章

  1. OpenPose的使用
  2. 百度下拉关键词刷?具体步骤及方法
  3. LDO分压电阻计算小工具
  4. html跳转函数,javascript函数里如何实现页面跳转?
  5. 健身管理系统一站式智能化健身管理体验
  6. c语言科学计数法 10的负8次方,3*10的负8次方等于多少?为什么计算
  7. java局域网视频传输,java局域网传输
  8. 无忧微店自动发货软件
  9. 前端特效——复杂下雪,雪花纷飞(纯css)
  10. java jshell_Java基础教程——Jshell