c语言语法分析常见问题,C语言语法提要与常见错误分析.doc
C语言语法提要与常见错误分析.doc
PAGE 20C语言上机指导与典型题解PAGE 21第1章 STYLEREF "标题 1,章,章名,实例名称" \* MERGEFORMAT Error! No text of specified style in document.
第 1 章
C语言语法提要与常见错误分析1.1 数据类型、常量与变量、运算符与表达式本章将给出C语言的语法提要,并列举编程过程中常见的一些语法性错误。为了便于理解,本书没有采用严格的语法定义形式。1.1.1 标识符1.标识符及其作用标识符表示常量、变量、自定义函数、自定义结构等对象的名称。比如,变量(标识符)代表了其存储空间的值,并参与相关的运算;通过函数名称调用函数。在程序中直接引用之。2.标识符的分类(1)系统标识符(又称为预定义标识符):由系统命名。在程序中可直接引用,如所有的库函数名称。(2)用户自定义标识符:由用户命名,要遵循如下命名规则。 = 1 \* GB3 ① 有效字符:可由字母、数字和下划线组成。在C语言中字母要区分大小写。同一个字母的大、小写被认为是两个不同的字符。例如,Ab、ab、aB、AB是4个不同的变量名称。 = 2 \* GB3 ② 起始字符:用户自定义标识符必须以字母或下划线开头。例如,2ab为错误标识符。 = 3 \* GB3 ③ 有效长度:不同的系统对标识符的字符数有不同的规定,一般前8个字符有效。系统标识符可以用做用户自定义标识符,但会改变系统标识符原来的含义,重新启动系统可以恢复系统标识符原来的含义。【常见错误】(1)在使用标识符时,没有注意大写字母与小写字母的区别。(2)把关键字命名为用户标识符使用。不能把关键字命名为标识符。(3)自定义标识符时,违背标识符的命名规则。1.1.2 关键字关键字,即由系统命名的具有特殊含义的英文单词或英文单词的缩写。不能将关键字用做用户自定义标识符。关键字中的字母都是小写的,所以要区分大小写。参见本书附 录A。1.1.3 C语言程序的书写规则(1)区分标识符中字母的大小写,一般小写。例如,A和a表示两个不同的变量。(2)C语言程序没有行号的概念,在程序中不使用行号。(3)C语言的语句以分号结???,分号;是C语言语句的结束标识,但复合语句最后的}之后不应加分号。(4)语句可以写在多个屏幕行上(如if语句、循环语句、switch语句等),在一个屏幕行上也可以写多条语句。(5)未规定在一行中书写代码的起始位置,但建议同一层次的语句左对齐,不同层次的语句书写时应缩进不同的空格。(6)非说明性语句应该放在函数体内,即放在{}之内。(7)注释可以出现在程序的任何位置,但“/*”与“*/”必须对称出现,且/与*之间不能有空格;“/**/”也不能嵌套,如注释“/* /* */ */*”是错误的。VC中的注释//也可以出现在任何位置,但/与/之间也不能留空格。(8)一个完整的独立语句是不能断行的,可以用续行符\将一个独立语句分写在两行上,但续行符\之后必须立刻换行,即之后不能有其他任何字符(如空格等),也不能跟注释,否则编译时会提示出错,提示为illegal escape sequence。
例:语句的断行与续行。可将一个语句断行分写在不同的屏幕行上,用续行符\连接。
#include "stdio.h"void main(){ int a=123,\ b=34,c,d=10; c=a+b; /* c=a+b语句将被执行d=a+b+c; 是注释的一部分,d的值不变*/ printf("a=%d b=%d \c=%d d=%d\n ",a,b,c,d);}1.1.4 C程序的组成与执行程序由函数构成。函数是C程序的基本组成单位。任何程序中有且只能有一个主函数(main)。可以有若干个其他函数。在主函数中可以调用其他函数,其他函数不能调用主函数。程序的执行总是从主函数(main)开始的。在编辑状态下,通过单步执行程序可以观察到。主函数是程序执行的入口,也是程序的出口(即程序也是通过主函数结束的)。C程序中无行号,也无行号的概念。1.1.5 数据类型在程序设计中计算对象不论是常量还是变量,都应该有数据类型。数据类型的描述确定了其内存所占空间的大小,也确定了其表示的数值范围和能够实施的运算。C语言有丰富的数据类型,C的数据类型可分为基本数据类型、构造数据类型、指针(*)、空类型(void)。1.基本数据类型基本数据类型不可再分解为其他的数据类型。C语言中的基本数据类型包括整型、实型、字符型,如表1-1所示。表1-1 基本数据类型及取值
c语言语法分析常见问题,C语言语法提要与常见错误分析.doc相关推荐
- 单片机c语言too many actual parameter,keil c语言编程常见错误分析.doc
keil c语言编程常见错误分析.doc 1. Warning 280:'i':unreferenced local variable 说明局部变量i 在函数中未作任何的存取操作解决方法消除函数中i ...
- c51单片机汇编语言语法错误,[计算机]汇编语言常见错误分析.doc
[计算机]汇编语言常见错误分析.doc 单片机汇编语言常见错误分析 2009年07月12日 星期日 1244单片机汇编语言常见错误分析发布 2009-4-04 0027 | 作者 hnrain | 查 ...
- c语言初学者常见错误归纳,C语言中常见错误分析.doc
C语言中常见错误分析 摘要:C语言是许多高校开设的第一门程序设计语言,使用方便灵活.根据C语言的特点,并结合实际教学,对在编程中经常遇到的错误进行分析.总结,为初学者尽快掌握C语言,提高程序设计水平提 ...
- 面试篇1:嵌入式C语言面试常见问题
嵌入式C语言面试常见问题 入门C语言20问20答: 01源程序的编译及链接是怎样一个过程? 02编写第一个简单的C语言程序 03C语言是强类型的语言,这是什么意思? 任何程序都要处理数据,计算机可以处 ...
- python语言的语法_Python语言 中的一些特殊语法
本文主要向大家介绍了Python语言 中的一些特殊语法,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. 1.高阶函数 python支持函数式编程,它内置了一些特殊函数,这些函数具有 ...
- r语言折线图_R语言基础入门视频教程——语法篇(完结)
这个视频分了2个阶段录制的,第1阶段有10章的内容,在文章:生物专业学生0基础入门R语言语法视频教程,就有说明,后面把最后2章补录完成啦,也算是一个结局啦.下面是目录: 第01章:R语言简介(免费) ...
- 语言(Language)和语法(Syntax)简述
语言Language和语法Syntax简述 一字母表和字符串 二语法和语言 1几个基本概念 a语法Grammer b推导Derivation c归纳Reduction d语法规则的递归定义Recurs ...
- Go语言学习笔记之基础语法(一)
目录 1. Go语言介绍 Go语言是什么 Go语言优势 Go适合用来做什么 2. Go环境搭建 通过Sublime 编译运行go程序 学习资料 3. 第一个Go程序 通过命令行运行程序 4. 基础语法 ...
- SQL定义语言(ACCESS2000中的语法)
SQL定义语言(ACCESS2000中的语法) access2000中 create 语句中可以实现的列级完整性约束: not null(不为空).unique(唯一).primary key(定义主 ...
- 图灵社区 : 阅读 : [讨论] Java语言被很多人抱怨语法繁琐、开发效率低、体系繁杂而笨重,为什么还有这么强的生命力,尤其是在企业软件领域?...
图灵社区 : 阅读 : [讨论] Java语言被很多人抱怨语法繁琐.开发效率低.体系繁杂而笨重,为什么还有这么强的生命力,尤其是在企业软件领域? 图灵社区 : 阅读 : [讨论] Java语言被很多人 ...
最新文章
- NFS共享服务挂载时出现“access denied by server while mounting”的解决方法
- IE下使用jquery ajax失效的原因
- android7.0如何加载本地图片,Android 6.0和7.0 加载同一张图片,结果不同
- java 头像 微信群_java怎么生成带用户微信头像的图片,并把这张图片发送给用户。...
- 【BZOJ4653】[Noi2016]区间 双指针法+线段树
- sdk版本过低怎么办_区块链中的“块”是什么?区块链网络拥堵怎么办?-Gemini双子新约...
- 语义解析KB-QA的方法框架
- [摘抄]游戏主循环逻辑
- Julia: Array的确很强大
- 中国大数据与智能计算产业联盟“开源软件工作委员会”成立会议在京召开
- 725.分隔链表(力扣leetcode) 博主可答疑该问题
- 支付宝扫描二维码支付
- 计算机网络(第 8 版)第 1 章概述 谢希仁 编著
- 人人都能看懂——c大调d大调f…
- 斯坦福大学自然语言处理第四课“语言模型(Language Modeling)”
- 计算机高级工程师职称评定条件,高级工程师职称评定条件是什么
- ios 故事版 设定UIImageRenderingMode的方式
- 【拜小白的机器学习】2-机器学习的种类与基本术语概念
- 【UE4 制作自己的载具】3-载具蓝图实现(基本)
- 江苏大学京江学院计算机怎么样,江苏大学京江学院是几本 学生评价怎么样好不好(10条)...