为什么我这个c语言编译时会出现警告(两条) - 爱问答

(爱问答)

为什么我这个c语言编译时会出现警告(两条)

#include<math.h>    //用平方和开平方必须用到math的函数库

int main()

{

    int a,b;

    a=5;

    b=pow(a,4);

 

    printf("b=%d",b);

    return b;

 

}


大致看了一下,以下两个地方可能需要商榷,仅供参考:

1、c语言中,pow()函数的输入参数和返回值均为float浮点型变量,具体如下:

原型:extern float pow(float x, float y);

用法:#include <math.h>

功能:计算x的y次幂。

说明:x应大于零,返回幂指数的结果。

程序中,语句为:b=pow(a,4);,函数返回float型,但b定义为int,引发类型不匹配,出现警告。


2、在最新的C99标准中,已经要求main()函数必须返回数值,以供上级调用者(例如系统)使用,

有两种定义方法:int main( void )  以及  int main( int argc, char *argv[] )

若不需要从命令行中获取参数,就使用int main(void) ;

否则的话,就用int main( int argc, char *argv[] )。

同时规定:main()函数如果返回0,则代表程序正常退出。通常,返回非零代表程序异常退出。

对于本例,在主程序的末尾,函数返回语句为:return b;,b的数值不会总是0,所以仍然会引发警告。

缺少函数定义

相关标签:c语言

下一篇:生态系统的种类之间的联系对环境的破坏的减少应该用什么模型

上一篇:bat删除指定目录文件(D/)

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?