The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"warning при кастинге"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [ Отслеживать ]

"warning при кастинге"  
Сообщение от roman (??) on 04-Июн-08, 09:10 
Приветствую.

Пусть дан простой код:

#include <math.h>

long hyp(long height, long base)
{
    return sqrt(height * height + base * base);
}

int main(void)
{
   long h = hyp(10, 20);
   return 0;
}

Компилирую на debian 4.0 (gcc (GCC) 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)):
#gcc -ansi -pedantic -W -Wall -lm b.c

Как я понимаю, по стандарту sqrt возвращает double, мы присваиваем long'у, что должно приводить к потере информации. Но ворнинга нет, почему?

Спасибо.

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "warning при кастинге"  
Сообщение от Fisher (??) on 04-Июн-08, 14:29 
http://www.opennet.dev/docs/RUS/linux_parallel/node248.html
попробывать опцию добавить -O2. Попробывать удалить файл *.o (должен появиться при первой компиляции)и скомпилировать заново.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "warning при кастинге"  
Сообщение от roman (??) on 04-Июн-08, 15:05 
>http://www.opennet.dev/docs/RUS/linux_parallel/node248.html
>попробывать опцию добавить -O2. Попробывать удалить файл *.o (должен появиться при первой
>компиляции)и скомпилировать заново.

нет, ничего не помогает

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "warning при кастинге"  
Сообщение от primus on 08-Июн-08, 15:13 
мнится мне, дело в том, что Вы вызываете компилятор С.
А С смотрит на всякие неаккуратности сквозь пальцы.
Компильните Ваш файл с помощью g++  и Вы увидите
соответствующие варнинги.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру