4 个解决方案
#1
不太可能不需要头文件的,有可能是被别的头文件间接包含了。
话说,getch()好像还不是标准库函数呢。。。
话说,getch()好像还不是标准库函数呢。。。
#2
getch()好像必须要写头文件吧?
getch()还不行,必须是_getch(),才可以。
楼主不会说的是getchar()吧?这两个是很不同的。
getch()还不行,必须是_getch(),才可以。
楼主不会说的是getchar()吧?这两个是很不同的。
#3
看是什么版本的编辑器决定了
在程序中使用函数之前 必须先对它进行声明。最简单的方法是把一个头文件包含都程序中 该文件声明了某种类别的所有库函数,头文件可以定义任何相关类型定义和宏。头文件与函数本身都是库的组成部分。
理论上 凡是标准库都需要加头文件,一个标准库的实现 有时候是不会让一个标准库 包含已实现标准库的头文件的 这样实现是总会有纰漏和问题的。
标准头文件 以下就这些 分别处理一些类似功能的集合
<assert.h>
<ctype.h>
<errno.h>
<float.h>
<limits.h>
<locale.h>
<math.h>
<setjmp.h>
<signal.h>
<stdarg.h>
<stddef.h>
<stdio.h>
<stdlib.h>
<string.h>
<time.h>
在程序中使用函数之前 必须先对它进行声明。最简单的方法是把一个头文件包含都程序中 该文件声明了某种类别的所有库函数,头文件可以定义任何相关类型定义和宏。头文件与函数本身都是库的组成部分。
理论上 凡是标准库都需要加头文件,一个标准库的实现 有时候是不会让一个标准库 包含已实现标准库的头文件的 这样实现是总会有纰漏和问题的。
标准头文件 以下就这些 分别处理一些类似功能的集合
<assert.h>
<ctype.h>
<errno.h>
<float.h>
<limits.h>
<locale.h>
<math.h>
<setjmp.h>
<signal.h>
<stdarg.h>
<stddef.h>
<stdio.h>
<stdlib.h>
<string.h>
<time.h>
#4
“编译无错”、“链接无错”、“运行结果看上去无错”和“运行结果实际上无错”不是一回事!
#1
不太可能不需要头文件的,有可能是被别的头文件间接包含了。
话说,getch()好像还不是标准库函数呢。。。
话说,getch()好像还不是标准库函数呢。。。
#2
getch()好像必须要写头文件吧?
getch()还不行,必须是_getch(),才可以。
楼主不会说的是getchar()吧?这两个是很不同的。
getch()还不行,必须是_getch(),才可以。
楼主不会说的是getchar()吧?这两个是很不同的。
#3
看是什么版本的编辑器决定了
在程序中使用函数之前 必须先对它进行声明。最简单的方法是把一个头文件包含都程序中 该文件声明了某种类别的所有库函数,头文件可以定义任何相关类型定义和宏。头文件与函数本身都是库的组成部分。
理论上 凡是标准库都需要加头文件,一个标准库的实现 有时候是不会让一个标准库 包含已实现标准库的头文件的 这样实现是总会有纰漏和问题的。
标准头文件 以下就这些 分别处理一些类似功能的集合
<assert.h>
<ctype.h>
<errno.h>
<float.h>
<limits.h>
<locale.h>
<math.h>
<setjmp.h>
<signal.h>
<stdarg.h>
<stddef.h>
<stdio.h>
<stdlib.h>
<string.h>
<time.h>
在程序中使用函数之前 必须先对它进行声明。最简单的方法是把一个头文件包含都程序中 该文件声明了某种类别的所有库函数,头文件可以定义任何相关类型定义和宏。头文件与函数本身都是库的组成部分。
理论上 凡是标准库都需要加头文件,一个标准库的实现 有时候是不会让一个标准库 包含已实现标准库的头文件的 这样实现是总会有纰漏和问题的。
标准头文件 以下就这些 分别处理一些类似功能的集合
<assert.h>
<ctype.h>
<errno.h>
<float.h>
<limits.h>
<locale.h>
<math.h>
<setjmp.h>
<signal.h>
<stdarg.h>
<stddef.h>
<stdio.h>
<stdlib.h>
<string.h>
<time.h>
#4
“编译无错”、“链接无错”、“运行结果看上去无错”和“运行结果实际上无错”不是一回事!