Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.92
solyar
Восстанавливающий знания
303 / 293 / 13
Регистрация: 01.11.2010
Сообщений: 1,220
Записей в блоге: 1
#1

Вывод предупреждения, объясните причину - C (СИ)

02.06.2012, 11:01. Просмотров 2617. Ответов 6
Метки нет (Все метки)

Пишу код, компилирую, а он выдает предупреждение. Пример кода:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
 
float f(float fahr)
{
    return (5.0/9.0)*(fahr-32); 
}
 
int main()
{
    int fahr;
    
    for (fahr = 0; fahr <= 300; fahr = fahr + 20)
        printf("%4d %6.1f\n", fahr, f(fahr));
}
Вот ошибка:

Без имени.c:14:1: предупреждение: control reaches end of non-void function [-Wreturn-type].
Я это пишу в Geany, в Ubuntu linux 12.04 LTS.
http://www.cyberforum.ru/c/thread806528.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.06.2012, 11:01
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Вывод предупреждения, объясните причину (C (СИ)):

GCC: Как отключить предупреждения
Очень нужно отключить предупреждения.

Ошибка и предупреждения в своей функции
Нужно вывести имена файлов без расширения. Написал функцию: int substr(char...

Избиваться от предупреждения: "неявная декларация функции «strlen»?
Добрый день!Подскажите, пожалуйста, как избиваться от предупреждения:&quot;неявная...

Найти причину, по которой код не компилируется
#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; int system(char *string) int main() ...

Пояснить причину разности вычислений двух программ
Почему здесь результат 27 27? int rec(int n, int *a, int *b){ return n ==...

6
fasked
Эксперт С++
4976 / 2556 / 241
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
02.06.2012, 11:33 #2
solyar, нет никакого возвращаемого значения в функции main, например "return 0".
1
Ilyawow
26 / 26 / 7
Регистрация: 18.11.2011
Сообщений: 266
02.06.2012, 14:52 #3
Цитата Сообщение от fasked Посмотреть сообщение
solyar, нет никакого возвращаемого значения в функции main, например "return 0".
да оно и не нужно у мну без не го раббит а ошибка в том что переменная fahr является типом int а вы хотити ее как foloat выдать (нехорошо) хотя и без этого у мну прекрасно компилится
0
Кот Ангенс
318 / 268 / 128
Регистрация: 24.05.2012
Сообщений: 629
02.06.2012, 15:22 #4
(float)int - допустимое неявное приведение, на него вряд ли ругаться будет. К тому же:
Цитата Сообщение от solyar Посмотреть сообщение
Без имени.c:14:1
Строка 14, столбец 1, т. е. то место, где стоит закрывающаяся скобка main.
1
Ilyawow
26 / 26 / 7
Регистрация: 18.11.2011
Сообщений: 266
02.06.2012, 15:46 #5
Цитата Сообщение от Кот Ангенс Посмотреть сообщение
Строка 14, столбец 1, т. е. то место, где стоит закрывающаяся скобка main.
незнаю в чем проблема , наверно отладчик не исправену мну в таком виде и кампилится и все выает .
1
easybudda
Модератор
Эксперт CЭксперт С++
10021 / 5944 / 1483
Регистрация: 25.07.2009
Сообщений: 11,230
02.06.2012, 16:10 #6
solyar, Керниган и Ритчи (Вы, если не ошибаюсь, их книжку читаете) не грузят до поры - до времени читателя "лишней" информацией, по этому в первых примерах и пишут что-то вроде
C
1
2
3
4
5
#include <stdio.h>
 
main(void) {
    printf("Hello world!");
}
Читайте дальше, там ещё будет подробно и про возвращаемое функцией значение, и про его тип, и для чего вообще функция main() должна какое-то значение возвращать. В вашем случае действительно return 0; перед последней закрывающей } не хватает.

Цитата Сообщение от Ilyawow Посмотреть сообщение
незнаю в чем проблема , наверно отладчик не исправену мну в таком виде и кампилится и все выает .
Просто вывод предупреждений не включён. И ещё раз напоминаю - пишите по-русски!
2
solyar
Восстанавливающий знания
303 / 293 / 13
Регистрация: 01.11.2010
Сообщений: 1,220
Записей в блоге: 1
02.06.2012, 17:46  [ТС] #7
Спасибо всем за помощь.
0
02.06.2012, 17:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.06.2012, 17:46
Привет! Вот еще темы с решениями:

Указатели - разобрать код и причину его неработоспособности
Всем привет! Возможно,вопрос глупый,но я не могу разобраться,а спросить...

Вычисление биномиального коэффициента (программа не работает, найдите причину)
Вычисление биноминального коэффициента #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt;...

Объясните причину ошибки
Я пытаюсь сделать функции в графическом редакторе: вырезать, копировать,...

объясните пожалуйста причину ошибки
вот такой небольшой код &lt;? $hello = &quot;hello&quot;; $string = &quot;Hello world&quot;;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru