C++中sqrt函数使用前要先声明或定义吗?

[复制链接]
查看11 | 回复5 | 2017-9-30 16:19:16 | 显示全部楼层 |阅读模式
每次用时都错,先是提示
`sqrt' undeclared (first use this function) (Each undeclared identifier is reported only once for each function it appears in.) 好像说第一次用未声明
然后声明了又说
[Linker error] undefined reference to `sqrt(int)' ld returned 1 exit status
难道还要定义不成?
到底该怎样申明啊?

回复

使用道具 举报

千问 | 2017-9-30 16:19:16 | 显示全部楼层
可以直接加 #include;如果要加 #include ,最好再加上 using namespace std。1、函数的作用域只是从定义的地方开始的。也就是说,在函数定义行之上,你是无法使用该函数的。而把函数的定义都放在主函数之前的话,程序会变得不清楚。所以在使用前只需用一行声明一下就可以了,明了。2、也许函数并不都是在一个文件里使用,这时候,如果再定义一遍,不仅显得罗嗦,而且使程序的维护变得麻烦,如果修改这个函数的话,需要修改每个定义。所以可以把函数声明放在一个头文件中,使用的时候,包含这个头文件就可以了。3、有时候,自己写的函数需要给别人用,比如商业用途。这样的话,不能将整个函数的实现
回复

使用道具 举报

千问 | 2017-9-30 16:19:16 | 显示全部楼层
只要在程序的最开头加一句#include 就可以了
回复

使用道具 举报

千问 | 2017-9-30 16:19:16 | 显示全部楼层
可以直接加 #include 如果要加 #include 最好再加上 using namespace std;
回复

使用道具 举报

千问 | 2017-9-30 16:19:16 | 显示全部楼层
需要申明 包含在math.h头文件中
回复

使用道具 举报

千问 | 2017-9-30 16:19:16 | 显示全部楼层
#include
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行