-
2021-05-19 20:26:00
1、关键字static的作用是什么?
这个简单的问题很少有人能回答完全。在C语言中,关键字static有三个明显的作用:
1). 在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。
2). 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。
3). 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。
大多数应试者能正确回答第一部分,一部分能正确回答第二部分,同是很少的人能懂得第三部分。这是一个应试者的严重的缺点,因为他显然不懂得本地化数据和代码范围的好处和重要性。
2、“引用”与指针的区别是什么?
1) 引用必须被初始化,指针不必。
2) 引用初始化以后不能被改变,指针可以改变所指的对象。
3) 不存在指向空值的引用,但是存在指向空值的指针。
指针通过某个指针变量指向一个对象后,对它所指向的变量间接操作。程序中使用指针,程序的可读性差;而引用本身就是目标变量的别名,对引用的操作就是对目标变量的操作。
流操作符<>、赋值操作符=的返回值、拷贝构造函数的参数、赋值操作符=的参数、其它情况都推荐使用引用。
3、.h头文件中的ifndef/define/endif 的作用?
答:防止该头文件被重复引用。
4、#include 与 #include "file.h"的区别?
答:前者是从Standard Library的路径寻找和引用file.h,而后者是从当前工作路径搜寻并引用file.h。
5、描述实时系统的基本特性
答 :在特定时间内完成特定的任务,实时性与可靠性。
免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
更多相关内容 -
C语言程序设计过程中指针概念的理解及使用.pdf
2021-09-19 13:08:24C语言程序设计过程中指针概念的理解及使用.pdf -
新概念51单片机C语言教程 PDF电子书
2018-05-05 08:01:19《新概念51单片机C语言教程:入门、提高、开发、拓展全攻略》从实际应用入手,以实验过程和实验现象为主导,循序渐进地讲述51单片机C语言编程方法以及51单片机的硬件结构和功能应用。全书共分5篇,分别为入门篇、内... -
C语言习题概念.doc
2021-05-19 20:26:07练习题 2015-2016(2)重修)判断C 语言源程序文件通过了编译、连接... ( )C语言中数据类型只有整型、实型和字符型。 ( )int i=20;switch(i/10){case 2:printf("A");case 1:printf("B");}的输出结果为A。( )Break语...练习题 2015-2016(2)重修)
判断
C 语言源程序文件通过了编译、连接之后 , 生成一个后缀为 .BAK 的文件。 ( )
在 C 程序中, APH 和 aph 代表不同的变量。 ( )
C语言中数据类型只有整型、实型和字符型。 ( )
int i=20;switch(i/10){case 2:printf("A");case 1:printf("B");}的输出结果为A。( )
Break语句用在循环体中,可结束本层循环,continue语句用在循环体中,可结束本次循环。( )
函数strlen("ASDFG\n")的值是7。( )
结构体类型只有一种。( )
构成数组的各个元素可以有不同的数据类型。 ( )
C语言中字符串的结束符是'\0'。 ( )
数组名代表数组的首地址。 ( )
函数的递归调用不过是一个函数直接或间接地调用它自身。( )
通过return语句,函数可以带回一个或一个以上的返回值。( )
Char *p="girl";的含义是定义字符型指针变量p,p的值是字符串"girl"。( )
若有定义:char *p(char a[10]);则p是函数名。( )
用fopen("file","r+");打开的文件"file"可以进行修改。 ( )
C概述,数据类型,运算符,表达式,选择结构
以下叙述中正确的是( )。
A.程序设计的任务就是编写程序代码并上机调试 B.程序设计的任务就是确定所用数据结构
C.程序设计的任务就是确定所用算法 D.以上三种说法都不完整
C语言源程序的基本单位是( )。
A.过程 B.函数 C.子程序 D.标识符
C语言规定,在一个源程序中main函数的位置( )。
A.必须在最开始 B.必须在最后 C.必须在预处理命令的后面 D.可以在其他函数之前或之后
以下叙述中正确的是( )。
A.C语言系统以函数为单位编译源程序 B.main函数必须放在程序开始
C.用户定义的函数可以被一个或多个函数调用任意多次 D.在一个函数体内可以定义另外一个函数
C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( )
A.必须为字母 B.必须为下划线 C.必须为字母或下划线
D.可以是字母,数字和下划线中任一种字符
下面四个选项中,均是合法转义字符的选项是( )
A.'\'' '\\' '\n' B.'\' '\017' '\"' C.'\018' '\f' 'xab' D.'\\0' '\101' 'xlf'
下面四个选项中,均是不合法的用户标识符的选项是( )
A.A P_0 do B.float la0 _A C.b-a goto int D._123 temp INT
已知有声明 char c='1';int x=300;float t=35000;double d=3.1234567e10; ,则以下表达式求值时除( )外其结果都可能是不准确的。
A.x=t/c B.t=d/x C.t=d/le5f D.t=x+c
已知有声明"int n;float x,y;",则执行语句"y=n=x=3.89;"后,y的值为( )。
A.3 B.3.0 C.3.89 D.4.0
已知有声明"int a=3,b=4,c=5;",以下表达式中值为0的是( )。
A.a&&b B.a<=b C.a||b&&c D.!(!c||1)
有)
执行了以下程序段后,x、w的值为( )。
int x=0,y=1,z=2,w;
if(x++) w=x;
else if(x++&y>=1) w=y;
else if(x++&&z>1) w=z;
A.0、1 B.1、1 C.2、1 D.3、2
寺
已知有声明"long x,y;"且x中整数的十进制表示有n位数字(4
A.y=x/(10*(n-1)) B.y=x%(10*(n-1)) C.y=x%(long)pow(10,n-1) D.y=x%(10^(n-1))
下列程序的输出结果是( )。
main( )
{ int a=7,b=5;
printf("%d\n",b=b/a);
}
A.5 B.1 C.0 D.不确定值
假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是( )。
A.7 B.8 C.9 D.2
设a为int型变量,执行下列赋值语句后,a的取值分别是( )。
a=125.534; a=(int)12
-
C语言文件的概念和文件指针
2021-05-21 04:02:271 C语言文件的概念在程序中,当调用输入函数从外部文件中输入数据赋给程序中的变量时,这种操作成为“输入”或“读”;当调用输出函数把程序中变量的值输出到外部文件中时,这种操作称为“输出”或“写”。C 语言中...1 C语言文件的概念
在程序中,当调用输入函数从外部文件中输入数据赋给程序中的变量时,这种操作成为“输入”或“读”;当调用输出函数把程序中变量的值输出到外部文件中时,这种操作称为“输出”或“写”。
C 语言中,对于输入、输出的数据都按“数据流”的形式进行处理。也就是说,输出时,系统不添加任何信息;输入时,逐一读入数据,直到遇到 EOF 或文件结束标志就停止。C 程序中的输入、输出文件都以数据流的形式存储在介质上。
对文件的输入、输出方式也称为“存取方式”。C 语言中,有两种对文件的存取方式:顺序存储和直接存取。
(1)顺序存取文件的特点:每当“打开”这类文件,进行读或写操作时,总是从文件的开头开始,从头到尾顺序读或写。也就是说,当顺序存取文件时,要读第 n 个字节,先要读取前 n-1 个字节,而不能一开始就读到第 n 个字节;要写第 n 个字节,先要写前第 n-1 个字节。
(2)直接存取文件又称随机存取文件,其特点是:可以通过调用 C 语言的库函数去指定开始读或写的字节号,然后直接对此位置上的数据进行读,或将数据写到此位置上。
数据可以按文本形式或二进制形式存放在介质上,因此文件可以按数据的存放形式分为文本文件和二进制文件。
(1)所谓文本文件指的是,当输出时,数据转换成一串字符,每个字符以字符的 ASCII 码值存储到文件中,一个字符占一个字节。当用 printf 函数进行输出时就进行了这样的转换,并在内部处理过程中指定输出文件的终端为屏幕。反之当输入时,又把指定的一串字符按类型转换成数据,并存入内存,比如当调用 scanf 函数进行输入时就进行了这种转换,并在内部处理过程中指定输入终端为键盘。
(2)当数据按二进制形式输出到文件中时,数据不经过任何转换、按计算机内的存储形式直接存储到硬盘上。也就是说,对于字符型数据,每个字符占一个字节;对于 int 类型数据,每个数据占两个字节;float 类型的每个数据占四个字节。当从二进制文件读入数据时,不必经过任何转换,而直接将读入的数据存入变量所占的内存空间。由此可以见,因为不存在转换的操作,从而提高了对文件输入输出的速度。注意:不能将二进制数据直接输出到终端屏幕,也不能从键盘输入二进制数据。
ANSI 标准规定,在对文件进行输入或输出的时候,系统将为输入或输出文件开辟缓冲区。所谓“缓冲区”,是系统在内存中为各文件开辟的一片存储区。当对某文件进行输出时,系统首先把输出的数据填入为该文件开辟的缓冲区内,每当缓冲区被填满时,就把缓冲区中的内容一次性的输出到对应文件中;当从某文件输入数据时,首先将从输入文件中输入一批数据放入到该文件的内存缓冲区中,输入语句将从该缓冲区中依次读取数据,当该缓冲区中的数据被读完时,将再从输入文件中输入一批数据放入。这种方式使得读、写操作不必频繁地访问外部设备,从而提高了读、写操作的速度。
2 文件指针
文件指针实际上是指向一个结构体类型的指针,这个结构体中包含有诸如:缓冲区的地址、在缓冲区中当前存取的字符的位置、对文件是“读”还是“写”、是否出错、是否已经遇到文件结束标志等信息。用户不必去了解其中的细节,所有一切都在 stdio.h 头文件中进行了定义。一般称上面提到的结构体类型名为 FILE,定义文件类型指针变量的一般形式为:
FILE *指针变量名;
例如:
FILE *fp1, *fp2;
fp1 和 fp2 均被定义为指向文件类型的指针变量,称为文件指针。
-
c语言基本概念
2021-01-04 21:51:37什么是c语言 c语言是一门通用计算机编程语言,广泛应用于底层的开发。C语言的设计目标是提供一种能以简易的... C语言是一种面向过程的计算机编程语言,与c++,java等面向对象的编程语言不一样。其编译器主要有Cla...什么是c语言
c语言是一门通用计算机编程语言,广泛应用于底层的开发。C语言的设计目标是提供一种能以简易的方式编译,处理低级存储器,产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管c语言提供了很多低级处理的功能,但仍然保持着良好的跨平台的特性。以一个标准规格写出来的c语言程序可以在很多的电脑平台上进行编译,甚至包括一些嵌入式处理器以及超级电脑等平台。
C语言是一种面向过程的计算机编程语言,与c++,java等面向对象的编程语言不一样。其编译器主要有Clang,GCC,WIN—TC,MSVC等
c语言的数据类型
char 字符数据类型 short 短整型 int 整形 long 长整型 long long 更长的整型 float 单精度浮点型 double 双精度浮点型 存在这么多类型的原因
为了更加丰富的表示生活中的各种值。
数据类型的大小
char 1个字节 short 2个字节 int 4个字节 long 4个字节 long long 8个字节 float 8个字节 double 8个字节 一个字节为8个比特位,数据类型的内存空间不同,通过合理使用,可以减少内存空间消耗。
类型的使用:
char ch='w' //定义字符类型 int weight=120 //定义整型
变量与常量
生活中有些值是不变的,有些值是可以改变的。所以存在变量与常量。
变量的分类
局部变量 全局变量
如何区分:位置不同,判断在大括号内还是大括号外。
注意:
1.一个变量既设置为局部变量又设置为全局变量的话,(会存在谁优先使用的问题)。局部变量的值会优先使用。
2.局部变量只能在大括号内部进行使用,而全局变量在哪里都可以使用
变量的作用域与生命周期:
通常来说,一段程序代码中所用的名字并不总是有效可用的。而限定这个名字可用性的代码范围是这个名字的作用域。简而言之,哪里可用,哪里就是它的作用域。
局部变量的作用域是变量所在的局部范围。
全局变量的作用域是整个工程。
生命周期是指变量的创建到销毁的一个时间段。
局部变量的生命周期:进入作用域生命周期开始,出作用域生命周期结束
常量的分类
字面常量 const修饰的常变量 #define定义的标识符常量 枚举常量
注意:
例如:const int num=4 此时num的值不能被再次更改,num为const修饰的常变量,具有常属性,但是本质上仍然为变量。
字符串+转义字符+注释
字符串
由双引号引起来的一串字符成为字符串。
例如:printf("how do you do ?\n");
想过没有,系统是怎么知道字符串到哪里结束?可能我们都是很理所当然的就是系统告诉了我们。
actually:内存中存放时候,系统会自动在'\n'后面增加一个'\0'作为字符串的结束标志。
printf执行的原理是: 每执行一个字符之前都会检查一下这个字符是否为'\0',如果遇到'\0'就会停止输出。如上图所示,字符串在内存存放的时候,系统会自动在字符串的最后面加‘\0’作为字符串的结束标志。因为printf执行的原理是: 每执行一个字符之前都会检查一下这个字符是否为'\0',如果遇到'\0'就会停止输出。所以第一个字符串打印值为hello。
转义字符
\? 在书写连续多个问号时使用,防止被解析成三字母词 \' 用于表示字符常量' \" 用于表示一个字符串内部的双引号 \\ 用于表示一个反斜杠,防止它被解释成一个转义序列符 \a 警告字符,蜂鸣 \b 退格符 \f 进纸符 \n 换行 \r 回车 \t 水平制表符 \v 垂直制表符 \ddd ddd表示1~3个八进制数字 \xdd dd表示2个16进制数字 例如:\\防止后面的字符被解释成转义序列符,使之为普通序列符。
注释
C语言风格的注释:/*xxxxxxxxxx*/
缺陷:不能嵌套注释
c++风格的注释://xxxxxxxxxx
可以注释一行,也可以注释多行
-
C语言之算法的概念
2022-01-15 16:49:06C语言算法的概念以及举例 -
新概念51单片机C语言教程 入门、提高、开发、拓展全攻略(高清、全本)
2019-04-19 08:04:58本书从实际应用入手,以实验过程和实验现象为主导,循序渐进地讲述51单片机C语言编程方法以及51单片机的硬件结构和功能应用。 全书共分5篇,分别为入门篇、内外部资源操作篇、提高篇、实战篇和拓展篇。 本书配套光盘... -
C语言中结构体与联合体的简单用法
2021-01-19 22:46:39摘要:本文简要分析结构体、联合体2种特殊的数据类型,结合链表和结构体的综合运用,详细注释创建链表的计算机执行和处理的过程,并对一些概念结合代码举例分析,指出常见错误和问题。 结构体 结构体是一种特殊的... -
第一章C语言程序设计概念33.ppt
2020-07-18 10:10:42;学习C语言的意义; 上机安排 上机地点13号教学楼402机房 上机实验题目...第一章 C语言程序设计的概念;C程序设计C语言;计算机基本工作过程;软件的形成;软件运行过程的简单描述;程序设计语言Programming Language是人与计 -
设计模式在C语言中的应用
2021-03-01 17:07:42设计模式的概念是从建筑领域引入的,本身从没歧视过面向过程编程语言,它只是对一类问题的普遍解决方案而已。面向对象语言因为有类、多态等特点,使得开发者们容易达到:隐藏细节、封装变化,而这与设计模式的目的... -
C语言基本概念(1)
2021-05-22 17:07:181,C语言概述C语言是70年代问世,它实际先有语言后有标准。1978年贝尔实验室B.W.Kernighan和D.M.Ritchit合著“The C Promgaming language”一本书,这本书就作为C的基本标准,以后ANSI出了一ANSI C标准于1983年公布... -
C语言之算法的概念和特点
2020-09-01 17:36:12一、算法的概念 对算法最通俗易懂的说法是:解决问题的方法和步骤 一个程序主要包块两个方面的信息: (1)数据:在程序中要用到那些数据,以及这些数据的类型和数据的组成形式。 (2)算法:解决某个问题所选用的... -
c语言文件读写概念
2019-11-04 21:55:346.1 c语言文件读写概念 文件分类 按文件的逻辑结构: 记录文件:由具有一定结构的记录组成(定长和不定长) 流式文件:由一个个字符(字节)数据顺序组成 按存储介质: ... -
C语言编译全过程
2020-08-30 02:28:10编译的概念:编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照操作系统对可执行文件格式的要求链接生成可执行程序... -
C语言编译过程
2014-08-10 21:15:17编译的概念:编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照操作系统对可执行文件格式的要求链接生成可执行程序。... -
c语言中变量的定义
2021-05-20 04:24:02C语言是一种应用广泛的善于实现控制的语言,变量在C语言中的应用更是灵活多变。那么变量究竟是什么呢?变量是内存或寄存器中用一个标识符命名的 存储单元,可以用来存储一个特定类型的数据,并且数据的值在程序运行... -
C语言中的基本元素和常量的概念
2021-05-20 11:59:10学习目标C语言中的基本元素常量、变量的概念和命名规则变量的声明、初始化和定义C语言中的基本元素变量运算符指令程序常量在程序执行过程中,其值不发生改变的量称为常量 在程序中,常量可以不以说明而直接使用 常量... -
C语言之程序设计概念
2020-09-01 17:23:37先要弄明白两个概念: ①、程序(procedure):一系列指令的有序集合 ②、指令 (instruct):人为输入计算机,由计算机识别并执行一步步操作的命令形式。(告诉计算机从事某一特殊运算的代码) 图灵奖获得者尼克劳斯... -
EDA/PLD中的C语言中结构体与联合体的简单用法
2020-11-08 21:13:19摘要:本文简要分析结构体、联合体2种特殊的数据类型,结合链表和结构体的综合运用,详细注释创建链表的计算机执行和处理的过程,并对一些概念结合代码举例分析,指出常见错误和问题。 结构体 结构体是一种特殊的... -
C语言/C++算法基本概念
2021-05-22 13:08:22C语言/C加加算法基本概念1. 算法是什么算法:顾名思义,一种计算的方法,在程序设计上,就表现为一组指令序列。为了使得算法有意义,还规定算法必须是有限的和确定的,也就是说算法的执行时间有限、执行的过程是确定... -
C语言学习之算法的概念及其表示知识
2021-05-21 17:26:03C语言学习之算法的概念及其表示算法的概念及其表示(二)开始上一个思维导图:上节提到算法的概念和特性,这一节说一下算法的表示以及结构化程序设计方法。说之前,把上一节的链接先附上,方便翻阅。C语言学习之算法的... -
新概念51单片机C语言教程入门、提高、开发、拓展全攻略
2018-04-03 10:07:55本书从实际应用入手,以实验过程和实验现象为主导,循序渐进地讲述51单片机C语言编程方法以及51单片机的硬件结构和功能应用。 -
浅析C语言中的内存布局
2021-01-01 15:32:27本节注重分清几个概念:.text .data .bss 堆 栈 静态存储区 只读存储区等 从程序到a.out 把程序变成.text .data .bss 是编译原理完成的过程 从a.out把程序映射到对应的内存地址空间是操作系统完成的,也就是在操作... -
C语言编译概念理解
2020-12-14 16:48:48要谈编译,首先要说说CPU架构的概念。CPU架构也就是CPU指令集(指令就是汇编指令或者机器指令,比如Add是汇编指令,而对应的机器指令在MIPS下就是000000)架构,现有CPU架构包括鼎鼎有名的Intel的X86架构、ARM的ARM... -
计算机C语言程序设计过程中的常见问题分析和研究
2021-05-19 12:50:37但是在这个过程中, 我们发现C语言程序设计过程中出现了很多问题, 对于计算机的进一步更新造成了很多障碍, 对整个计算机行业的发展造成了很大的影响, 可能导致的原因有很多方面。在本篇论文中, 笔者就主要针对C语言... -
c语言基础概念笔记
2021-05-20 02:40:57最近看到自己之前刚开始学习的时候记的一些笔记就稍微整理了一下第一章c语言注释概念:给代码进行解释说明作用:加强程序代码的可读性和维护性/*:多行注释//:单行注释变量和基本数据类型变量:一块存储空间,... -
C语言复习整理(一)——C语言基本概念
2020-08-03 23:53:33C语言是一种面向过程的程序设计语言。 (1)语言简洁、紧凑,使用方便、灵活。 (2)运算符丰富。丰富灵活的运算符可以实现其他高级语言难以实现的运算。 (3)具有结构化的控制语句。用函数作为程序的模块单位,...