Rahul Singh Gulia Ответов: 1

Если #include<math.h> не используется в заголовке


#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<conio.h>
int main()
{
	int n1, cube;

	printf("Enter the number = ");
	scanf("%d", &n1);

	cube = pow(n1, 3);

	printf("\nThe cube of given number is = %d\n", cube);
	return 0;
}

И выход есть :
Введите число = 2

Куб данного числа равен = -15280
Нажмите любую клавишу, чтобы продолжить ...

Когда я использую #include<math.h>, вывод идет правильно.
Но я хочу знать о неизвестном числе, которое придет, если я не использую #include<math.h>. Что представляет собой это число "-15280"?

Что я уже пробовал:

Я получаю вывод с помощью #include<math.h>. Но я не хочу знать о неизвестном числе, которое придет. Что она собой представляет?

1 Ответов

Рейтинг:
5

KarstenK

Ваш неизвестный номер-это какой-то мусор памяти, который вы получаете, когда pow не определен. В зависимости от настроек компилятора вы можете принудительно получить выходные данные, и компоновщик создает некоторый двоичный файл. Это чепуха.

Вам нужно включить math.h, чтобы получить функцию pow.


[no name]

В случае, если pow не определен: не должно ли это закончиться ошибкой компилятора/компоновщика?
Заранее спасибо.

Rahul Singh Gulia

Да, это даст ошибку времени компиляции, если pow() здесь не используется.

jeron1

Я в замешательстве, если вы не включили " математику.h' у вас есть ошибка времени компиляции в строке, где использовался pow (), верно?