Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.79
kulikow88
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 31
#1

Ошибка при компилировании. Язык Си - C++

29.12.2013, 19:09. Просмотров 2204. Ответов 48
Метки нет (Все метки)

Всем здравствуйте. Пишу следующую программу: дан массив из 15 элементов. Найти 3 самых больших элемента массива, являющиеся простыми числами (самый оптимальный вариант). Получилось следующее:
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include "stdafx.h"
#include "Win32Project4.h"
#include "stdio.h"
#include "conio.h"
#include "stdlib"
 
#ifdef _DEBUG
#define N 10
#endif
void main()
 
int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
    int A[N];
    int    i, max1, max2, max3;
    for (i = 0; i<N; i++)
        scanf("%d", &A[i]);
    max1 = -1; max2 = -1; max3 = -1;
    for (i = 1; i<N; i++)
    {
        if (A[i] > max1)
        { // новый max1 
            max3 = max2;
            max2 = max1;
            max1 = A[i];
        }
        else
        if (A[i] > max2)
        { // новый max2 
            max3 = max2;
            max2 = A[i];
        }
        else
        if (A[i] > max3) // новый max3 
            max3 = A[i];
    }
 
    printf("%d  %d  %d", max1, max2, max3);
}
k = 0;
for (i = 0; i<N; i++)
if (n % i == 0)
k++;
{
    return 0;
    getch();
}
В итоге мне Visual Studio 2013 Ultimate пишет следующее: "fatal error C1083: Не удается открыть файл включение: afx.h: No such file or directory".
Что означает эта ошибка. Гуглил, но решения проблемы данной не нашёл. Может быть само решение неверно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.12.2013, 19:09
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Ошибка при компилировании. Язык Си (C++):

Ошибка при компилировании
При компилировании выдается ошибка &quot;невозможно создать экземпляр абстрактного...

Ошибка при компилировании
Добрый день, не компилится код, ошибки следующие: In function 'int main(int,...

Ошибка при компилировании
Здравствуйте. У меня ошибка при компилировании кода в VS2017 и мне не понятно...

Ошибка при компилировании
Вот такая ошибка &quot;Unhandled exception at 0x1027d340 (msvcr100d.dll) in...

ошибка при компилировании
уже не знаю че делать .. написал программу для класса полиномов -выводит все...

Ошибка при компилировании
Приветствую, скачал visual studio 2010 профессиональную, создал проект win32 с...

48
alsav22
5438 / 4833 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
29.12.2013, 19:27 #2
Цитата Сообщение от kulikow88 Посмотреть сообщение
Может быть само решение неверно?
До решения дело не дошло. Закоментируйте #include "stdafx.h". Что за #include "Win32Project4.h"?
0
kulikow88
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 31
30.12.2013, 13:59  [ТС] #3
Цитата Сообщение от alsav22 Посмотреть сообщение
До решения дело не дошло. Закоментируйте #include "stdafx.h". Что за #include "Win32Project4.h"?
А что комментировать "stdafx.h"? Компилятор просит эту библиотеку.
А "Win32Project4.h" это встроенная библиотека при создании проекта. Не стал убирать. Она мне не мешает
0
alsav22
5438 / 4833 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
30.12.2013, 14:29 #4
Цитата Сообщение от kulikow88 Посмотреть сообщение
А "Win32Project4.h" это встроенная библиотека при создании проекта.
Какая библиотека? Заголовочный файл от библиотеки не можете отличить?
Цитата Сообщение от kulikow88 Посмотреть сообщение
А что комментировать "stdafx.h"? Компилятор просит эту библиотеку.
А пробовали комментировать? Может после этого перестанет просить?
1
kventin_zhuk
БНТУ ФИТР
215 / 155 / 41
Регистрация: 26.12.2012
Сообщений: 382
30.12.2013, 14:32 #5
kulikow88, зоздайте console application -empty project - вставите пустой спп файл, stdafx и отпишитесь. Про второй заголовочный файл, а он у вас в проекте есть?
0
Kuzia domovenok
2218 / 1987 / 448
Регистрация: 25.03.2012
Сообщений: 6,978
Записей в блоге: 1
30.12.2013, 15:15 #6
Цитата Сообщение от kventin_zhuk Посмотреть сообщение
kulikow88, зоздайте console application -empty project - вставите пустой спп файл, stdafx и отпишитесь. Про второй заголовочный файл, а он у вас в проекте есть?
достаточно только цпп файла, при создании пустого проекта
1
xoror
29 / 31 / 4
Регистрация: 15.12.2013
Сообщений: 147
30.12.2013, 15:24 #7
Цитата Сообщение от kventin_zhuk Посмотреть сообщение
вставите пустой спп файл, stdafx и отпишитесь.
Зачем в пустой проект вставлять stdafx? Он там не нужен
2
kventin_zhuk
БНТУ ФИТР
215 / 155 / 41
Регистрация: 26.12.2012
Сообщений: 382
30.12.2013, 15:43 #8
xoror, писал с телефона - подразумевалось удалите инклюд stdafx
1
Evg
Эксперт CАвтор FAQ
18940 / 6901 / 513
Регистрация: 30.03.2009
Сообщений: 19,446
Записей в блоге: 30
30.12.2013, 15:51 #9
Во всех строках со стандартными инклюдами нужно вместо обычных кавычек писать угловые скобки (#include <stdafx.h> и т.п.). В теории может быть в том числе и из-за этого
0
kulikow88
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 31
30.12.2013, 15:59  [ТС] #10
Удалил #include "stdafx.h", но в итоге выдаёт следующее: "fatal error C1010: непредвиденный конец файла во время поиска предкомпилированного заголовка. Возможно, вы забыли добавить директиву "#include "stdafx.h"" в источник."

Добавлено через 1 минуту
Может мне стоит как-нибудь перенастроить Visual Studio? Уже несколько сред качал и ни одна ещё стабильно не работала
0
kventin_zhuk
БНТУ ФИТР
215 / 155 / 41
Регистрация: 26.12.2012
Сообщений: 382
30.12.2013, 16:00 #11
Evg, да ну, просто первым делом заголовочный файл будет искаться в файлах проекта а если уж там его не будет - где обычно

Добавлено через 1 минуту
kulikow88,
код у вас тоже не валидный ... вот этот вот блок вообще лежит вне main
C++
1
2
3
4
5
6
7
8
k = 0;
for (i = 0; i<N; i++)
if (n % i == 0)
k++;
{
    return 0;
    getch();
}
1
Kuzia domovenok
2218 / 1987 / 448
Регистрация: 25.03.2012
Сообщений: 6,978
Записей в блоге: 1
30.12.2013, 16:05 #12
kulikow88, первым делом тебе надо создать Empty project (пустой проект), а не Console Application (консольное приложение)
0
xoror
29 / 31 / 4
Регистрация: 15.12.2013
Сообщений: 147
30.12.2013, 16:15 #13
kulikow88, Это что такое?! Начинается со стр. №40

Цитата Сообщение от kulikow88 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
k = 0;
for (i = 0; i<N; i++)
if (n % i == 0)
k++;
{
* * return 0;
* * getch();
}
Kuzia domovenok, лучше покажи как создать пустой проект. может он не знает.
0
kulikow88
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 31
30.12.2013, 16:28  [ТС] #14
xoror, kventin_zhuk, этот блок я вообще убрал. Теперь он мне выдаёт следующее: "error C2061: синтаксическая ошибка: идентификатор "TCHAR""
0
xoror
29 / 31 / 4
Регистрация: 15.12.2013
Сообщений: 147
30.12.2013, 16:32 #15
kulikow88, здесь нет экстрасенсов
Покажи полностью всю программу, в какой строчке ошибка и т.д.
0
kulikow88
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 31
30.12.2013, 16:43  [ТС] #16
Вот вся программа. Ошибка в 9 строчке. Пишет следующее: "1>c:\users\владимир\desktop\vstavit_v_massiv_5_chisel.cpp(9): error C2061: синтаксическая ошибка: идентификатор "TCHAR"".
Это единственная ошибка


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
25
26
27
28
29
30
31
32
33
34
35
36
37
#include "stdio.h"
#include "conio.h"
 
#ifdef _DEBUG
#define N 10
#endif
void main();
 
int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
    int A[N];
    int    i, max1, max2, max3;
    for (i = 0; i<N; i++)
        scanf("%d", &A[i]);
    max1 = -1; max2 = -1; max3 = -1;
    for (i = 1; i<N; i++)
    {
        if (A[i] > max1)
        { // новый max1 
            max3 = max2;
            max2 = max1;
            max1 = A[i];
        }
        else
        if (A[i] > max2)
        { // новый max2 
            max3 = max2;
            max2 = A[i];
        }
        else
        if (A[i] > max3) // новый max3 
            max3 = A[i];
    }
 
    printf("%d  %d  %d", max1, max2, max3);
    getch();
}]
0
Ev_Hyper
Заблокирован
30.12.2013, 16:47 #17
квадрадную скобку в конце уберите
и

C++
1
void main();
сотрите
0
kventin_zhuk
БНТУ ФИТР
215 / 155 / 41
Регистрация: 26.12.2012
Сообщений: 382
30.12.2013, 16:48 #18
kulikow88, project - properties - general - charcacter set - use unicode стоит? Если уж хотите с юникодом связываться. Но лучше переходите на ANSI.
0
kulikow88
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 31
30.12.2013, 16:58  [ТС] #19
Цитата Сообщение от Ev_Hyper Посмотреть сообщение
квадрадную скобку в конце уберите
и

C++
1
void main();
сотрите
Квадратную скобку я в спешке случайно написал. Стёр. Эффекта пока не наблюдается(.
kventin_zhuk, да, активировано
0
Timur_CF
39 / 39 / 6
Регистрация: 12.12.2013
Сообщений: 227
Записей в блоге: 1
30.12.2013, 17:06 #20
Когда программу создаешь отключи precompiled header!
0
30.12.2013, 17:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.12.2013, 17:06
Привет! Вот еще темы с решениями:

Ошибка при компилировании
При компилировании любого кода всегда эта ошибка: c:\program files\microsoft...

Ошибка при компилировании
Условие задачи: Разработать программу “Выравнивание”. Исходная информация...

Ошибка при компилировании Hello world
Здравствуйте.Помогите пожалуйста.Установил Visual Studio C++.Вбил Hello World,а...

Ошибка при компилировании на XCode
всем привет, начну с того что я только новичок в с/c++ ну так вот появилась у...


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

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

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