Форум программистов, компьютерный форум CyberForum.ru

declaration syntax error на строчке void main - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 42, средняя оценка - 4.95
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
05.02.2012, 12:49     declaration syntax error на строчке void main #1
Вот код программы, между void и main выдает ошибку declaration syntax error, что я не так делаю? моя первая прога на с++, поэтому прошу помощи)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  #include<math.h>
  #include<stdio.h>
  #include<conio.h>
float x,y,a,b,z
 
   void main()
{
   clrscr();
   printf("Vvedite a:");
   scanf("%d";&a);
   printf("Vvedite b:");
   scanf("%d";&b);
   printf("Vvedite x:");
   scanf("%d";&x);
   y=0.02;
   z=((sin(2*x-b*b)-7*a*(y*y))/(x*x*x*x+1))-(sqrt(cos(y)-5*(exp(ln(y)*6)))/(6-cos(y));
   printf("z=%d",z);
   getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2012, 12:49     declaration syntax error на строчке void main
Посмотрите здесь:

C++ Declaration syntax error
C++ (7,3):Declaration syntax error
C++ ошибка declaration syntax error
C++ [C++ Error] Unit1.cpp(6): E2141 Declaration syntax error
Ошибка компиляции: error C2562: main: функция типа "void" C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
05.02.2012, 12:54     declaration syntax error на строчке void main #2
gylayko, по стандарту функция main должа возвращать значение типа int.
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
05.02.2012, 12:56     declaration syntax error на строчке void main #3
Цитата Сообщение от gylayko Посмотреть сообщение
float x,y,a,b,z
semicolon ; забыли

silent_1991,
Цитата Сообщение от gylayko Посмотреть сообщение
#include<math.h>
\\...

getch();
Видимо в борланде работает -> на void ему пофиг.
А так лучше конечно на int поправить
silent_1991
05.02.2012, 12:57
  #4

Не по теме:

Цитата Сообщение от dimcoder Посмотреть сообщение
semicolon ; забыли
А вот на это даже не смотрел))

BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
05.02.2012, 13:01     declaration syntax error на строчке void main #5
И на это вот:
C
1
2
3
4
5
scanf("%d";&a);
   printf("Vvedite b:");
   scanf("%d";&b);
   printf("Vvedite x:");
   scanf("%d";&x);
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
05.02.2012, 13:03     declaration syntax error на строчке void main #6
dimcoder, расширение не выдаёт борланд, ибо это Pure C (правда, насколько он Pure в борланде, я не знаю). А вот clrscr(); выдаёт.
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
05.02.2012, 13:04  [ТС]     declaration syntax error на строчке void main #7
Цитата Сообщение от silent_1991 Посмотреть сообщение
gylayko, по стандарту функция main должа возвращать значение типа int.
а у меня возвращает типа float, а что тогда нужно вместо void main() ? при замене переенных на тип int ошибка не пропадает)
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
05.02.2012, 13:06     declaration syntax error на строчке void main #8
Цитата Сообщение от gylayko Посмотреть сообщение
а у меня возвращает типа float
ЩИТО?
Цитата Сообщение от gylayko Посмотреть сообщение
при замене переенных на тип int
А переменный тут при чём? По стандарту функция main может быть описана либо как
C
1
int main(void);
, либо как
C
1
int main(int argc, char *argv[]);
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
05.02.2012, 13:09     declaration syntax error на строчке void main #9
Так должно работать:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  #include<math.h>
  #include<stdio.h>
  #include<conio.h>
float x,y,a,b,z;
 
   int main()
{
   printf("Vvedite a:");
   scanf("%d",&a);
   printf("Vvedite b:");
   scanf("%d",&b);
   printf("Vvedite x:");
   scanf("%d",&x);
   y=0.02;
   z=((sin(2*x-b*b)-7*a*(y*y))/(x*x*x*x+1))-(sqrt(cos(y)-5*(exp(log(y)*6)))/(6-cos(y)));
   printf("z=%d",z);
   getch();
   return 0;
}
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
05.02.2012, 13:12  [ТС]     declaration syntax error на строчке void main #10
Цитата Сообщение от BumerangSP Посмотреть сообщение
Так должно работать:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  #include<math.h>
  #include<stdio.h>
  #include<conio.h>
float x,y,a,b,z;
 
   int main()
{
   printf("Vvedite a:");
   scanf("%d",&a);
   printf("Vvedite b:");
   scanf("%d",&b);
   printf("Vvedite x:");
   scanf("%d",&x);
   y=0.02;
   z=((sin(2*x-b*b)-7*a*(y*y))/(x*x*x*x+1))-(sqrt(cos(y)-5*(exp(log(y)*6)))/(6-cos(y)));
   printf("z=%d",z);
   getch();
   return 0;
}
все равно перед main та же ошибка!
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
05.02.2012, 13:15     declaration syntax error на строчке void main #11
А вот так будет даже правильно работать. И будет выглядеть более-менее верно с точки зрения стиля.

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include<math.h>
#include<stdio.h>
#include<conio.h>
 
int main(void)
{
    float x, y, a, b, z;
    
    printf("Vvedite a:");
    scanf("%f", &a);
    printf("Vvedite b:");
    scanf("%f", &b);
    printf("Vvedite x:");
    scanf("%f", &x);
    
    y = 0.02;
    z = ((sin(2 * x - b * b) - 7 * a * (y * y)) / (x * x * x * x + 1)) - (sqrt(cos(y) - 5 * (exp(log(y) * 6))) / (6 - cos(y)));
    
    printf("z=%f", z);
    
    getch();
    
    return 0;
}
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
05.02.2012, 13:16     declaration syntax error на строчке void main #12
Цитата Сообщение от gylayko Посмотреть сообщение
все равно перед main та же ошибка!
Среду разработки и компилер назовите. Скомпилел на борланд 3.1 все работает.
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
05.02.2012, 13:17     declaration syntax error на строчке void main #13
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  #include<math.h>
  #include<stdio.h>
float x,y,a,b,z;
   int main()
{
   printf("Vvedite a:");
   scanf("%f",&a);
   printf("Vvedite b:");
   scanf("%f",&b);
   printf("Vvedite x:");
   scanf("%f",&x);
   y=0.02;
   z=((sin(2*x-b*b)-7*a*(y*y))/(x*x*x*x+1))-(sqrt(cos(y)-5*(exp(log(y)*6)))/(6-cos(y)));
   printf("z=%f",z);
   return 0;
}
http://liveworkspace.org/code/314bcb...f64fc9afa745ce
Как бы не думал, что он ошибку выдаст. Максимум предупреждение
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
05.02.2012, 13:25  [ТС]     declaration syntax error на строчке void main #14
Цитата Сообщение от dimcoder Посмотреть сообщение
Среду разработки и компилер назовите. Скомпилел на борланд 3.1 все работает.
тот же борланд 3.1 только через dosbox ибо 64 бит!

Добавлено через 57 секунд
Цитата Сообщение от BumerangSP Посмотреть сообщение
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  #include<math.h>
  #include<stdio.h>
float x,y,a,b,z;
   int main()
{
   printf("Vvedite a:");
   scanf("%f",&a);
   printf("Vvedite b:");
   scanf("%f",&b);
   printf("Vvedite x:");
   scanf("%f",&x);
   y=0.02;
   z=((sin(2*x-b*b)-7*a*(y*y))/(x*x*x*x+1))-(sqrt(cos(y)-5*(exp(log(y)*6)))/(6-cos(y)));
   printf("z=%f",z);
   return 0;
}
http://liveworkspace.org/code/314bcb...f64fc9afa745ce
Как бы не думал, что он ошибку выдаст. Максимум предупреждение
а что за программа на фото? так ведь удобнее! без всяких досбоксов и т.д. работает?
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
05.02.2012, 13:26     declaration syntax error на строчке void main #15
Цитата Сообщение от gylayko Посмотреть сообщение
а что это за программа на фото?
Если Вы о ссылке, то это онлайн компилер. Кстати, вещь удобная)
gylayko
30 / 29 / 4
Регистрация: 28.09.2011
Сообщений: 448
05.02.2012, 13:29  [ТС]     declaration syntax error на строчке void main #16
Цитата Сообщение от BumerangSP Посмотреть сообщение
Если Вы о ссылке, то это онлайн компилер. Кстати, вещь удобная)
ну да, там все работает также как и у Вас! а через обычный компилятор борланд 3.1 нифига!
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
05.02.2012, 13:32     declaration syntax error на строчке void main #17
Цитата Сообщение от gylayko Посмотреть сообщение
обычный компилятор борланд 3.1
А потому что это не обычный компилятор. Это чрезвычайно древний компилятор, ему уже 20 лет. за это время успели выпустить три стандарта и несколько правок к ним.
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
05.02.2012, 13:34     declaration syntax error на строчке void main #18
Цитата Сообщение от gylayko Посмотреть сообщение
ну да, там все работает также как и у Вас! а через обычный компилятор борланд 3.1 нифига!
Это говорит о том, что код правильный. Но в онлайн компиляторе можно только проверять на ошибки. Поэтому стоит найти лучше что-нибудь поновей борланда, типа dev-cpp. Лучше конечно сразу MVC.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
05.02.2012, 13:36     declaration syntax error на строчке void main #19
Цитата Сообщение от BumerangSP Посмотреть сообщение
MVC
Не очень хороший совет, у него есть некоторые проблемы со стандартом.

Цитата Сообщение от BumerangSP Посмотреть сообщение
dev-cpp
Не такая уж она и новая.

gylayko, советую среду, к которой можно подключить любой компилятор (на ваш выбор) и компилятор mingw, как можно новее (последняя релизная версия 4.6.2).
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2012, 13:40     declaration syntax error на строчке void main
Еще ссылки по теме:

Какой новые синтаксис: int main() VS. void main() C++
C++ C++ Declaration syntax error
C++ Error E2141 Declaration syntax error

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

Или воспользуйтесь поиском по форуму:
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
05.02.2012, 13:40     declaration syntax error на строчке void main #20
Цитата Сообщение от silent_1991 Посмотреть сообщение
Не очень хороший совет, у него есть некоторые проблемы со стандартом.
По крайней мере уж с такими ошибками должен справляться
Не такая уж она и новая.
Слышал, что WxDev-cpp вроде как обновляется.
Yandex
Объявления
05.02.2012, 13:40     declaration syntax error на строчке void main
Ответ Создать тему
Опции темы

Текущее время: 21:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru