c语言,为什么这个函数没有定义,我定义了啊,下面附代码和报错?

那跟编译器使用的标准有关
C99的编译器不需要再声明函数,而老的C89需要

不过由于支持C99的编译器只有极少数(如dev、gcc等),大多数的C编译器(尤其是嵌入式编译器)仍使用C89标准,因此,如果你希望你的程序有更好的兼容性,还是遵从C89的标准写上函数声明语句吧

另外需要提示一点:如果你定义的函数返回值是int类型,C89也不需要声明就可以使用此函数,这是特殊情况(我估计你遇到的情况应该是这种),不过为了保持程序员的良好习惯,还是写上声明比较好

你对这个回答的评价是?

下载百度知道APP,抢鲜体验

使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。

c语言的用户定义函数的类型

在本教程中,您将学习如何使用函数解决相同问题。

以下四个程序检查用户输入的整数是否为素数。

以下程序的所有输出都相同,我们在每个示例中创建了用户定义的函数。 但是,每个例子采用的方法都不一样。

示例1 :没有传递参数,也没有返回值#include

//返回类型为void,表示不返回任何值

checkPrimeNumber ) )函数接受用户的输入,检查是否是素数并显示在画面上。

函数的返回类型为void。 因此,此函数不返回值。

示例2 :不传递参数,但返回值#include

//返回用户输入的整数

n=getInteger (; 语句中的方括号表示没有传递给函数的参数。 然后,将函数返回的值分配给n。

其中getInteger ()函数从用户获取输入并返回。 main ) )函数内部包含用于检查数字是否为素数的代码。

示例3 :传递了参数,但没有返回值#include

//返回类型为void,表示不返回任何值

其中checkPrimeAndDisplay ()函数检查传递的参数是否为素数,并显示相应的消息。

//返回的值被分配给flag变量

如果传递的参数是素数,则函数返回0。 如果传递的参数不是素数,函数返回1。 将返回值分配给flag变量。

根据flag为0或1,main ()函数将打印相应的消息。

好吧,这取决于你要解决的问题。 在这种情况下,最好传递参数并从函数返回值(例4 )。

函数必须执行特定的任务。 checkPrimeNumber ()函数不接受用户输入,也不显示相应的消息。 只检查数字是否是素数。

1、根据数据的编码方式,文件可分为文件和文件。ASCII、二进制

2、根据数据的存取方式和结构,文件可分为文件和文件。顺序、随机

3、工程文件的扩展名是,窗体文件的扩展名是。Vbp、Frm

4、Visual Basic应用程序通常由窗体模块、模块和模块三类组成。标准、类

5、Visual Basic中的控件分为标准控件、和。ActiveX控件、可插入对象

6、Visual Basic中的菜单有两种形式,分别是形式和形式。直接执行、打开对话框

7、一个控件在窗体上的位置由和属性决定。Top、Left

8、Visual Basic字符采用编码方式,每个字符用个字节编码。统一、二

9、控件和窗体的Name属性只能通过期间设置,不能在期间设置。设计、运行

10、在Visual Basic中,字符串常量要用括起来,日期/时间常量要用括起来。“、#

11、以下程序段的输出结果是。9

12、要想在文本框中显示垂直滚动条,必须把属性设置为2,同时把属性设置为。ScrollBars、MultiLine、True

13、控件数组的名字由属性指定,而数组中的每个元素由属性指定。Name、 Index

15、以下语句的输出结果是。3

16、为了使一个标签透明且没有边框,必须把它的BorderStyle属性设置为,并把BackStyle属性设置为。0、1

17、由Array函数建立的数组名字必须是类型。数组作过程形参时,调用方式为调用。变体、传址

时,分别代表鼠标的、、键。1,2,4、左、右、中

2、实现字符的Unicode编码方式与ANSI编码方式相互转换的函数是( )B

3、为了窗体的大小可以改变,必须把它的BorderStyle属性设置为()B

4、下列不能激活属性窗口的操作是()D

A、用鼠标双击窗体的任何部件

B、执行“工程”菜单中的“属性窗口”命令

我要回帖

更多关于 c语言编译成功不能输出 的文章

 

随机推荐