Форум программистов, компьютерный форум, киберфорум
Наши страницы

C для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
aleksand
21 / 9 / 2
Регистрация: 18.06.2011
Сообщений: 185
#1

Ошибка "C++ does not support default-int" - C (СИ)

13.09.2012, 08:57. Просмотров 1313. Ответов 4
Метки нет (Все метки)

Всем доброго утра, в книжонке 2009(Керниган,Ритчи - Программирование на C.2009) года выпуска написано следующее:

PHP
1
2
3
4
5
 #include <stdio.h>
 
main() {
     printf("Hellow World");
}
Выдаёт ошибку "C++ does not support default-int"

Если делаю вот так: int main, то работает. Почему из учебника код не работает - хз. Может настроить как-то надо visual studio 2010? Подскажите пожалуйста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.09.2012, 08:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка "C++ does not support default-int" (C (СИ)):

Ошибка компиляции Cannot convert "int**" to "int*", "int*" to "int" - C (СИ)
Здравствуйте, есть код. Выдает 2 ошибки: Cannot convert &quot;int**&quot; to &quot;int*&quot; Cannot convert &quot;int*&quot; to &quot;int&quot; Выделение памяти вроде бы...

Сортировка подсчетом и ошибка "Невозможно преобразовать "void*" в "int*" - C (СИ)
Мне нужно отсортировать одномерный массив с помощью алгоритма сортировки, однако возникает ошибка &quot;error C2440: инициализация: невозможно...

Ошибка в переменных: Невозможно преобразовать "void *" в "int **" - C (СИ)
после компиляции выдает ошибку: error C2440: =: невозможно преобразовать &quot;void *&quot; в &quot;int **&quot; 1&gt; Для преобразования &quot;void*&quot; к...

Error C2040:strnset_2:"char *(char *,int,unsigned int)" отличается по уровням косвенного обращения от "int ()" - C (СИ)
Не могу найти в чём ошибка. error C2040: strnset_2: &quot;char *(char *,int,unsigned int)&quot; отличается по уровням косвенного обращения от &quot;int...

Динамический массив структур - Ошибка "значение int* нельзя использовать для инициализации сущности типа TRGB" - C (СИ)
требуется создать динамический массив структур, т.е. он не совсем динамический, просто изначально не известно сколько в нем будет...

Функция замены ":" на "_" в названии файла и ошибка "undefined reference to 'strcat'" - C (СИ)
Добрый день,прошу помочь мне с такой проблемой: В общем есть функция,работающая с именем файла,которая меняет в имени файла &quot;:&quot; на &quot;_&quot; ...

4
defer
秘密
555 / 235 / 3
Регистрация: 29.11.2010
Сообщений: 783
13.09.2012, 09:19 #2
у файла должно быть расширение *.с
и вообще для изучения с, лучше взять mingw
0
alkagolik
Заблокирован
14.09.2012, 03:48 #3
Цитата Сообщение от aleksand Посмотреть сообщение
Может настроить как-то надо visual studio 2010?
да. покопаться в свойствах проекта. там должно быть что-то вроде "компилировать код как Си"
0
Psilon
Master of Orion
Эксперт .NET
5923 / 4822 / 634
Регистрация: 10.07.2011
Сообщений: 14,437
Записей в блоге: 5
Завершенные тесты: 4
14.09.2012, 21:53 #4
Попробуй так написать:
C
1
2
3
4
5
6
 #include <stdio.h>
 
main() {
   printf("Hellow World");
   return 0;
}
0
Gepar
1180 / 536 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
15.09.2012, 16:46 #5
Цитата Сообщение от aleksand Посмотреть сообщение
Выдаёт ошибку "C++ does not support default-int"
Если делаю вот так: int main, то работает. Почему из учебника код не работает - хз. Может настроить как-то надо visual studio 2010? Подскажите пожалуйста.
Код компилируется как код для с++, в с++ нету подстановки int всем функциям где не указан тип, такое было лишь в си. Тоесть компилятор си кода по стандарту если тип возврата у функции не указан то допишет int и потом соберёт ваш код как
C
1
2
3
int main() {
     printf("Hellow World");
}
Компилятор же с++ int не подсовывает. Но всё равно не указывать тип возврата в си это плохая практика так что не надо так делать и стоит указывать тип возврата явно, а не пытаться заставить компилятор собирать "плохой код".
0
15.09.2012, 16:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.09.2012, 16:46
Привет! Вот еще темы с ответами:

Исправить ошибку: "Cannot convert "STUDENTS**" to int" - C (СИ)
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include&lt;alloc.h&gt; #include &lt;string.h&gt; #define kstud 10 typedef struct {int...

Невозможно преобразовать "int *" в "int" - C (СИ)
Может кто поймет, что тут не так? #include &quot;stdafx.h&quot; #include &quot;stdio.h&quot; #include &quot;conio.h&quot; #include &quot;clocale&quot; #define row 3 ...

Создать запись "Двигатель", которая содержит элементы "Название", "Мощность", "Скорость", "Цена" - C (СИ)
Создать запись &quot;Двигатель&quot;, которая содержит элементы &quot;Название&quot;, &quot;Мощность&quot;, &quot;Скорость&quot;, &quot;Цена&quot;. На основе записи &quot;Двигатель&quot; создать...

Значение типа "int" нельзя присвоить сущности типа "LISTNODEPTR" - C (СИ)
В чём проблема и как починить? struct listNode { char data; struct listNode *nextPtr; }; typedef struct listNode LISTNODE; ...


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

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

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