объявление функций

Тема в разделе "Arduino & Shields", создана пользователем Владислав321, 30 дек 2016.

  1. void setup(void) {
    .........
    showall();
    .........
    }

    void loop(void) {
    .......
    }

    void showall(void) {
    ............
    }


    вот что ардуино говорит про вызов функции
    exit status 1
    'showall' was not declared in this scope
     
  2. ANV

    ANV Гуру

    Странно, вроде препроцессор Ардуино сам должен делать прототипы функций.
    Попробуйте функцию showall объявить до функции setup

    Если не поможет - ищите опечатки
     
  3. проверил на предыдущей версии и все работает
     
  4. может что с настройками?
     
  5. ANV

    ANV Гуру

    На текущей то версии если showall() перенести в начало, то ошибка будет или нет?
     
  6. ostrov

    ostrov Гуру

    Чем новее версия IDE, тем она ближе к настрящему С++. Не знаю хорошо это или плохо.
     
  7. qwone

    qwone Гик

    Конечно лучше. Может потом в графическую среду изменится.(Borland C++) Ведь почему "настоящий Си" стал настоящим, так как он все же оптимален.
     
  8. rkit

    rkit Гуру

    Там просто баг. Сканер деклараций не понимает кириллицы в путях.
     
  9. ostrov

    ostrov Гуру

    У меня во нет кириллицы нигде, а нет нет да взбрыкнет. Причем, зависимость поймать не могу.
     
  10. mcureenab

    mcureenab Гуру

    Компилятор, вроде как gcc. Он автоматически объявляет функцию, чтобы продолжить компиляцию.
    В данном случае неявное объявление функции может порождать сигнатуру
    int showall();
     
  11. ARDUIN-щик

    ARDUIN-щик Гик

    Попробуй описать функцию 'showall' выше 'void setup'. В некоторых версиях Arduino IDE этот вариант компилятор считает правильным.
     
  12. Unixon

    Unixon Оракул Модератор

    Для этого уже есть QtCreator :) Интересно, заведется ли QtLite на STM32 хотя бы?