在对高级语言编写的源程序进行编译时,可发现源程序中【 】
A、全部语法错误和全部语义错误
B、部分语法错误和全部语义错误
C、全部语法错误和部分语义错误
D、部分语法错误和部分运行错误
语法错误是程序语句结构上的错误,语义错误是程序语句及其成分使用时出现的含义方面的错误,语义错误分为静态语义错误和动态语义错误,动态语义错误在程序运行时才可能出现,编译时可发现源程序中的全部语法错误和静态语义错误。
如果要使得用C语言编写的程序在计算机上运行,则对其源程序需要依次进行【 】等阶段的处理。
A、预处理、汇编和编译
B、编译、链接和汇编
C、预处理、编译和链接
D、编译、预处理和链接
C语言是编译型编程语言,需要对其源程序经过预处理、编译和链接处理,产生可执行文件,将可执行文件加载至内存后再执行。
将多个目标代码文件装配成一个可执行程序的程序称为【 】。
A、编译器
B、解释器
C、汇编器
D、链接器
通过编译方式实现的编程语言需要经过编译(产生目标代码)、链接产生可执行代码后才能在计算机上运行。有些语言(如 C/C++)还需在编译之前进行预处理。
用某高级程序设计语言编写的源程序通常被保存为【 】
A、位图文件
B、文本文件
C、二进制文件
D、动态链接库文件
某C语言程序中有表达式x%m(即x被 m除取余数),其中,x为浮点型变量,m为整型非0常量,则该程序在______时会报错,该错误属于______错误。
A、编译 语义
B、预处理 逻辑
C、编辑 语义
D、运行 逻辑
用户编写的源程序不可避免地会有一些错误,这些错误大致可分为静态错误和动态错误。动态错误也称动态语义错误,它们发生在程序运行时,例如变量取零时作除数、引用数组元素下标越界等错误。静态错误是指编译时所发现的程序错误,可分为语法错误和静态语义错误。C 语言对浮点数作整除取余运算没有定义,属于运算类型不匹配的错误,编译过程中的语义分析阶段会报告此类错误,属于静态语义错误。