常见编译错误及常用标准库函数Word格式.docx

上传人:b****1 文档编号:13673712 上传时间:2022-10-12 格式:DOCX 页数:23 大小:28.29KB
下载 相关 举报
常见编译错误及常用标准库函数Word格式.docx_第1页
第1页 / 共23页
常见编译错误及常用标准库函数Word格式.docx_第2页
第2页 / 共23页
常见编译错误及常用标准库函数Word格式.docx_第3页
第3页 / 共23页
常见编译错误及常用标准库函数Word格式.docx_第4页
第4页 / 共23页
常见编译错误及常用标准库函数Word格式.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

常见编译错误及常用标准库函数Word格式.docx

《常见编译错误及常用标准库函数Word格式.docx》由会员分享,可在线阅读,更多相关《常见编译错误及常用标准库函数Word格式.docx(23页珍藏版)》请在冰豆网上搜索。

常见编译错误及常用标准库函数Word格式.docx

isnotamemberof'

####'

'

不是'

结构体的一个成员(一般是因为错误引用结构体成员)

5.errorC2057:

expectedconstantexpression期望是常量表达式(一般出现在switch语句的case分支中)

6.errorC2061:

syntaxerror:

identifier'

***'

语法错误:

标识符'

***'

(一般是因为未定义形式参数的数据类型)

7.errorC2065:

undeclaredidentifier

未声明过的标识符

8.errorC2082:

redefinitionofformalparameter'

重复定义形式参数'

9.errorC2133:

unknownsize

不知道其大小(一般是因为数组未定义长度)

10.errorC2143:

syntaxerror:

missing'

;

before'

{'

句法错误:

前缺少'

11.errorC2146:

beforeidentifier'

在'

12.errorC2181:

illegalelsewithoutmatchingif

非法的else,没有与之匹配的if(一般是因为if与else不配对)

13.errorC2196:

casevalue'

alreadyused

case值'

已经使用过(一般出现在switch语句的case分支中)

14.errorC2296:

%'

illegal,leftoperandhastype'

float'

非法,左操作数应为’float'

类型

15.errorC2297:

illegal,rightoperandhastype'

非法,右操作数应为'

16.errorC2562:

void'

functionreturningavalue

无返回值的函数返回了一个值

17.errorC2660:

functiondoesnottake2parameters

函数不能传递2个参数

18.errorC2466:

cannotallocateanarrayofconstantsize0

不能分配一个大小为0的数组(一般是因为数组未定义长度)

19.errorC4716:

mustreturnavalue

函数必须返回一个值(一般是定义返回值的函数体内未写return语句)

20.warningC4035:

noreturnvalue

函数没有返回值

21.warningC4244:

return'

conversionfrom'

to'

int'

possiblelossofdata

从'

转换为’int'

可能丢失数据

22.warningC4553:

=='

operatorhasnoeffect;

didyouintend'

='

?

没有效果的运算符“==”是;

否改为“=”?

23.warningC4700:

localvariable'

usedwithouthavingbeeninitialized局部变量'

没有初始化就使用

24.errorC4716:

函数必须返回一个值

25.LINK:

fatalerrorLNK1168:

cannotopenDebug/P1.exeforwriting

连接错误:

不能打开P1.exe文件,以改写内容

(一般是因为P1.Exe还在运行,未关闭)

附录B常用标准库函数

1.stdio.h中包括的常用函数

1.fclose关闭文件

原型:

intfclose(FILE*stream);

功能:

关闭由stream指向的流。

清洗保留在流缓冲区内的任何未写的输出。

如果是自动分配,

那么就释放缓冲区。

返回:

如果成功,就返回零。

如果检测到错误,就返回EOF。

2.feof检测文件末尾

intfeof(FILE*stream);

如果为stream指向的流设置了文件尾指示器,则返回非零值;

否则返回零。

3.ferror检测文件错误

intferror(FILE*stream);

如果为stream指向的流设置了文件错误指示器,则返回非零值;

4.fflush清洗文件缓冲区

intfflush(FILE*stream);

把任何未写入的数据写到和stream相关的缓冲区中,其中stream指向用于输出或更新

的已打开的流。

如果stream是空指针,那么flush函数清洗存储在缓冲区中的所有未写入的流。

返回:

如果成功就返回零。

5.fgetc从文件中读取字符

intfgetc(FILE*stream);

从stream指向的流中读取字符。

读到的字符。

如果fgetc函数遇到流的末尾,则设置流的文件尾指示器并且返回EOF。

如果读取发生错误,fgetc函数设置流的错误指示器并且返回EOF。

6.fgetpos获得文件位置

intfgetpos(FILE*stream,fpos_t*pos);

把stream指向的流的当前位置存储到pos指向的对象中。

如果成功就返回零。

如果调用失败,则返回非零值,并且把由实现定义的错误码存储

到errno中。

7.fgets从文件中读取字符串

char*fgets(char*s,intn,FILE*stream);

从stream指向的流中读取字符,并且把读入的字符存储到s指向的数组中。

遇到第一

个换行符已经读取了n-1个字符,或到了文件末尾时,读取操作都会停止。

fgets函数会在字

符串后添加一个空字符。

s(指向数组的指针),如果读取操作错误或fgets函数在存储任何字符之前遇到了流

的末尾,都会返回空指针。

8.fopen打开文件

FILE*fopen(constchar*filename,constchar*mode);

打开文件以及和它相关的流,文件名是由filename指向的。

mode说明文件打开的方式。

文件指针。

在执行下一次关于文件的操作时会用到此指针。

如果无法打开文件则返回空指针。

9.fprintf格式化写文件

intfprintf(FILE*stream,constchar*format,...);

向stream指旨向的流写输出。

format指向的字符串说明了后续参数显示的格式。

写入的字符数量。

如果发生错误就返回负值。

10.fputc向文件写字符

intfputc(intc,FILE*stream);

把字符c写到stream指向的流中。

c(写入的字符),如果写发生错误,fputc函数会为stream设置错误指示器,并且返

回EOF。

11.fputs向文件写字符串

intfputs(constchar*s,FILE*stream);

把s扌旨向的字符串写到stream指向的流中。

如果成功,返回非负值。

如果写发生错误,则返回EOF。

12.fread从文件读块

size_tfread(void*ptr,size_tsize,size_tnmemb,FILE*stream);

试着从stream指向的流中读取nmemb个元素,每个元素大小为size个字节,并且把读入的元素存储到ptr指向的数组中。

实际读入的元素(不是字符)数量。

如果fread遇到文件末尾或检测到读取错误,那么此数将会小于nmemb。

如果nmemb或size为零,则返回值为零。

13.freopen重新打开文件

FILE*freopen(constchar*filename,constchar*mode,FILE*stream);

在freopen函数关闭和stream相关的文件后,打开名为filename且与stream相关的文件。

Mode参数具有和fopen函数调用中相同的含义。

如果操作成功,返回stream的值。

如果无法打开文件则返回空指针。

14.fscanf格式化读文件

intfscanf(FILE*stream,constchar*format,...);

向stream指向的流读入任意数量的数据项。

format指向的字符串说明了读入项的格式。

跟在format后边的参数指向数据项存储的位置。

成功读入并且存储的数据项数量。

如果发生错误或在可以读数据项前到达了文件末尾,那么就返回EOF。

15.fseek文件查找

intfseek(FILE*stream,longintoffset,intwhence);

为stream指旨向的流改变文件位置指示器。

如果whenee是SEEK_SET,那么新位置是在

文件开始处加上offset个字节。

如果whenee是SEEK_CUR,那么新位置是在当前位置加上offset个字节。

如果whenee是SEEK_END,那么新位置是在文件末尾加上offset个字节。

对于

文本流而言,offset必须是零,或者whenee必须是SEEK_SET并且offset的值是由前一次的ftell函数调用获得的。

而对于二进制流来说,fseek函数不可以支持whenee是SEEK_END的调用。

如果操作成功就返回零。

否则返回非零值。

16.fset

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 教育学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1