Пытаюсь обявиить функцию _ ошибка

эндрю

✩✩✩✩✩✩✩
2 Янв 2022
2
0
Оформи код соответствующим тэгом
Добрый день! Изучаю ардуинку и пытаюсь обявить функцию как на примере со страницы у Alex и компилятор ругается на обявление функции DD (); Что не так? Снимок_2022_01_02_09_21_44_412.jpg


#include <Arduino.h>
byte a, b;
int c;

void setup() {
Serial.begin(9600);
a = 10;
b = 20;
DD (); // ругается на эту строчку
}

void loop() {
Serial.println (c);
void DD() {
c = a + b;
}
 

Bruzzer

★★★✩✩✩✩
23 Май 2020
340
105
@эндрю,
Потеряли одну скобку.

void loop() {
Serial.println (c);
} // Не хватало этой скобки.

void DD() {
c = a + b;
}
 

bort707

★★★★★★✩
21 Сен 2020
2,926
868
Почему все так уверены, что дело в потерянной скобке? Точнее, скобки в любом случае не хватает, но в каком месте?
Мне вот показалось, что автор пытался вставить определение функции внутрь ЛУП.

Если я прав - @эндрю, Ваша ошибка в том, что Вы вставили тело функции внутрь ЛУП. Это неверно, Си не поддерживает вложенных функций.
 

te238s

★★✩✩✩✩✩
14 Ноя 2021
375
94
Всё правильно,не объявлена функция. Программа что должна делать встретив DD(); ?
Угадать что от неё хочет человек? Функцию кто будет объявлять?
Сорри,не разглядел. Объявлять надо до setup ещё,но никак не в loop.
 

Lumenjer

★★★✩✩✩✩
10 Дек 2020
220
112
@te238s, Это Arduino IDE, там все по другому, не как у людей)
Даже не нужно предварительно объявлять функцию. Не будь там ошибки со скобкой (или попыткой объявить функцию внутри loop) все бы собралось
 

Геннадий П

★★★★★★✩
14 Апр 2021
1,881
603
44
Даже не нужно предварительно объявлять функцию.
Да и в других IDE вроде тоже можно после объявлять, только варнинг покажет, который можно либо загасить ключом, либо просто игнорировать. Но по правилам языка так нельзя делать.
 

te238s

★★✩✩✩✩✩
14 Ноя 2021
375
94
Да и в других IDE вроде тоже можно после объявлять,
Определять да,но не объявлять. Это разные вещи.
Определить функцию можно потом,при условии что она объявлена перед первым использованием.
 

эндрю

✩✩✩✩✩✩✩
2 Янв 2022
2
0
Ребят, спасибо за оперативную помощь. Действи тельно не хватало одной скобки и одна функция была в нутри второй.Теперь компиляторт не ругаетсяСнимок_2022_01_03_11_48_38_383.png