С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 112

Ошибки в коде

26.05.2015, 13:50. Показов 1839. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При компиляции компилятор выдает подобные ошибки:

C:\Users\Дом\Desktop\12.c:2:23: interrupt.h: No such file or directory
C:\Users\Дом\Desktop\12.c:3:20: eeprom.h: No such file or directory
C:\Users\Дом\Desktop\12.c:4:19: sleep.h: No such file or directory
C:\Users\Дом\Desktop\12.c:5:19: delay.h: No such file or directory
C:\Users\Дом\Desktop\12.c: In function `ReadKey':
C:\Users\Дом\Desktop\12.c:35: error: 'for' loop initial declaration used outside C99 mode
C:\Users\Дом\Desktop\12.c:37: error: `PORTA' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:37: error: (Each undeclared identifier is reported only once
C:\Users\Дом\Desktop\12.c:37: error: for each function it appears in.)
C:\Users\Дом\Desktop\12.c:38: error: 'for' loop initial declaration used outside C99 mode
C:\Users\Дом\Desktop\12.c:39: error: `PINC' undeclared (first use in this function)

C:\Users\Дом\Desktop\12.c: In function `ISR':
C:\Users\Дом\Desktop\12.c:70: error: `PORTD' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:72: error: `PORTB' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c: In function `main':
C:\Users\Дом\Desktop\12.c:78: error: `ACSR' undeclared (first use in this function)

C:\Users\Дом\Desktop\12.c:78: error: `ACD' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:83: error: `DDRD' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:85: error: `DDRB' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:87: error: `DDRA' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:89: error: `PORTC' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:90: error: `DDRC' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:94: error: `OCR1A' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:94: error: `F_CPU' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:95: error: `TCCR1B' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:95: error: `WGM12' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:95: error: `CS12' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:95: error: `CS11' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:95: error: `CS10' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:96: error: `TIMSK1' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:96: error: `OCIE1A' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:103: error: `SLEEP_MODE_IDLE' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:112: error: 'for' loop initial declaration used outside C99 mode
C:\Users\Дом\Desktop\12.c:115: error: `PORTB' undeclared (first use in this function)
C:\Users\Дом\Desktop\12.c:117: error: 'for' loop initial declaration used outside C99 mode

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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
#include <io.h>
#include <interrupt.h>
#include <eeprom.h>
#include <sleep.h>
#include <delay.h>
 
// the number of light states
#define NSTATES 4
// for when no key is pressed
#define KEY_NONE '@'
 
// stateDurations0 in eeprom, read on reset, written on change by user
const unsigned stateDurations0[NSTATES]  = {3, 1, 3, 1};
// state durations
unsigned stateDurations[NSTATES];
// light states, one hex digit per lights set
const unsigned lightStates[NSTATES] = {0x41, 0x23, 0x14, 0x32};
// current lights state
int state = 0;
// seconds left for state change
int secondsLeft = 3;
// bool, set by timer interrupt, read and cleared in main loop
int inputMode = 0;
 
// for keyboard debouncing
void ShortDelay()
{
    _delay_ms(15);
}
 
// returns a pressed key code (digit, ascii '*' or '#') or KEY_NONE
char ReadKey()
{
    static const char keyCodes[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, '*', 0, '#'};
    for (unsigned col = 0, colMask = 1; col < 3; col++, colMask <<= 1)
    {
        PORTA = ~colMask;
        for (unsigned row = 0, rowMask = 1; row < 4; row++, rowMask <<= 1)
            if (!(PINC & rowMask))
                return keyCodes[row * 3 + col];
    }
    return KEY_NONE;
}
 
char WaitAndReadKey()
{
    char key;
    while ((key = ReadKey()) == KEY_NONE)
        ;
    return key;
}
 
void WaitForKeyUp()
{
    while (ReadKey() != KEY_NONE)
        ;
}
 
ISR(TIMER1_COMPA_vect)
{
    if (ReadKey() == '*')
        inputMode = 1;
    if (--secondsLeft == 0)
    {
        if (++state == NSTATES)
            state = 0;
        secondsLeft = stateDurations[state];
    }
    // lights
    PORTD = lightStates[state];
    // indicators
    PORTB = secondsLeft / 10 << 4 | secondsLeft % 10;
}
 
int main(void)
{
    // Disable stuff to reduce power consumption
    ACSR |= 1 << ACD;
    // load state durations
    eeprom_read_block(stateDurations, stateDurations0, sizeof(stateDurations));
    secondsLeft = stateDurations[0];
    // output to lights
    DDRD = 0xff;
    // output to indicators
    DDRB = 0xff;
    // output to keypad
    DDRA = 0x0f;
    // input from keypad, enable pull-ups for all pins
    PORTC = 0xff;
    DDRC = 0x00;
    // timer1: clk/1024, clear on compare
    // make sure F_CPU is right
    // multiply by 8 if prescaler is disabled
    OCR1A = (F_CPU + 0.5) / 1024;
    TCCR1B = 1 << WGM12 | 1 << CS12 | 0 << CS11 | 1 << CS10;
    TIMSK1 = 1 << OCIE1A;
    sei();
    while (1)
    {
        if (!inputMode)
        {
            // idle mode, io clock is still active
            set_sleep_mode(SLEEP_MODE_IDLE);
            sleep_mode();
            continue;
        }
        // light durations input mode
        cli();
        // '*' is probably still pressed, though may not be
        WaitForKeyUp();
        ShortDelay();
        for (unsigned curState = 0; curState < NSTATES; curState++)
        {
            // show current state on indicator
            PORTB = curState;
            int newDuration = 0;
            for (unsigned i = 0; i < 2; i++)
            {
                char key = WaitAndReadKey();
                // ignore non-digit keys
                if (key >= 0 && key < 10)
                    newDuration = newDuration * 10 + key;
                ShortDelay();
                WaitForKeyUp();
                ShortDelay();
            }
            stateDurations[curState] = newDuration;
        }
        // update durations in eeprom
        // for some reason src is first in WinAVR, ignore warning!
        eeprom_write_block(stateDurations, stateDurations0, sizeof(stateDurations));
        inputMode = 0;
        // start from state 0
        state = 0;
        secondsLeft = stateDurations[0];
        sei();
    }
    // just for the sake of it
    return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.05.2015, 13:50
Ответы с готовыми решениями:

Найти ошибки в коде и исправить эти ошибки (Наследование)
Вот в общем 3 файла, изучаю наследование на примере односвязного и двусвязного списков: list.h (inline) #pragma once class list...

Найти ошибки в коде и исправить эти ошибки
Есть у меня вот такой код: #include &lt;iostream&gt; using namespace std; class A{ private: int* a; size_t size_; ...

Найти ошибки в коде и исправить эти ошибки - C++
Судя по вываливающейся ошибки, идет двойное освобождение памяти. У самого не получается отловить откуда. A.h #pragma once ...

11
lss
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
26.05.2015, 13:54
И откуда этот код взялся?
0
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 112
26.05.2015, 13:55  [ТС]
что значит откуда взялся?
0
lss
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
26.05.2015, 13:57
Используешь какую-то стороннюю библиотеку?
0
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 112
26.05.2015, 13:59  [ТС]
поподробнее можно пожалуйста? я только начинаю в этом разбираться
0
lss
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
26.05.2015, 14:00
Цитата Сообщение от Kolek000 Посмотреть сообщение
я только начинаю в этом разбираться
Откуда код взял?
0
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 112
26.05.2015, 14:05  [ТС]
поделились

Добавлено через 20 секунд
это так важно на данный момент?
0
lss
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
26.05.2015, 14:11
Цитата Сообщение от Kolek000 Посмотреть сообщение
это так важно на данный момент?
Тоска... Как ещё спросить? Код на какую тему? Пердполагает использование какой библиотеки? Узнай у того, кто с тобой поделился, и подключи эту библиотеку к проектеу.

Добавлено через 1 минуту
Вот это хедеры, которые не относятся к стандартной библиотеке С++:
Цитата Сообщение от Kolek000 Посмотреть сообщение
C:\Users\Дом\Desktop\12.c:2:23: interrupt.h: No such file or directory
C:\Users\Дом\Desktop\12.c:3:20: eeprom.h: No such file or directory
C:\Users\Дом\Desktop\12.c:4:19: sleep.h: No such file or directory
C:\Users\Дом\Desktop\12.c:5:19: delay.h: No such file or directory
0
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 112
26.05.2015, 14:12  [ТС]
вообщем это программа для светофора
0
5 / 5 / 4
Регистрация: 31.03.2015
Сообщений: 48
26.05.2015, 14:35
Как уже тебе тут попытались ранее довести, программа не будет работать без этих заголовочных файлов.
0
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 112
26.05.2015, 14:38  [ТС]
где мне найти эти хедеры?
0
lss
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
26.05.2015, 14:41
Цитата Сообщение от Kolek000 Посмотреть сообщение
где мне найти эти хедеры?
Библиотеку скачай, там будут.

Добавлено через 54 секунды
Цитата Сообщение от Otello Посмотреть сообщение
Как уже тебе тут попытались ранее довести, программа не будет работать без этих заголовочных файлов.
И не только без них, но и ещё и без .lib и, возможно, без .dll.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.05.2015, 14:41
Помогаю со студенческими работами здесь

Ошибки при компиляции - исправить ошибки в коде
Помогите исправить ошибки , не понимаю в чем может быть причина ... #include &lt;conio.h&gt; #include &lt;stdio.h&gt; #include...

ошибки в готовом коде(ошибки указаны)
Ввести с клавиатуры строку (кол-во символов не больше 10). И определить ее длину c использованием подпрограмм. model small .stack 100h ...

Ошибки в коде
Помогите, пожалуйста, исправить Количество элементов массивов не менее 10. Исходные данные ввести самостоятельно. Вывести на экран...

Ошибки в коде
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;string.h&gt; // strlen #include &lt;dos.h&gt; // delay #include &lt;winsock2.h&gt; //...

Ошибки в коде
Привет народ) Когда запускаю программу она мне выдаёт ошибки и говорит что то про showMeAndSelect в Main.cpp. Помогите разобраться...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru