in C Я пишу некоторые из моих первых упражнений. Раньше я пытался объявить простую функцию внутри main, и она приходит с ошибкой: «определение функции здесь запрещено». Но я думал, что функция может быть объявлена внутри основного или внешнего, единственная разница - это область? Я также читал здесь, что другие люди пишут функции внутри основного, так почему бы мне не позволить мне это сделать? благодаряОбъявление функции?
0
A
ответ
3
Вы можете объявить функцию внутри другой функции:
int main(void) {
int foo(int); // declaration
...
}
Но вы не можете определить функцию внутри другой функции:
int main(void) {
// Doesn't work.
int foo(int x) {
return x * 2;
}
...
}
Кроме того, объявления функций внутри другие функции - это действительно необычная вещь, и по существу она никогда не нужна.
Смежные вопросы
- 1. Объявление функции Javascript. Объявление Colon в функции
- 2. Объявление функции/определение функции
- 3. Объявление функции внутри функции?
- 4. Объявление функции в определении функции
- 5. объявление функции Vs выражения функции
- 6. Объявление функции против определения функции
- 7. Объявление функции - выражение функции - область
- 8. Объявление функции внутри функции - почему?
- 9. Объявление функции C
- 10. Неявное объявление функции x
- 11. Объявление функции анализа Javascript
- 12. Arduino недействительным объявление функции
- 13. Объявление метода и функции
- 14. Множественное объявление для функции
- 15. Неявное объявление функции 'wait'
- 16. Объявление функции getch()
- 17. C: Неявное объявление функции
- 18. Объявление массива внутри функции
- 19. Объявление функции в SML?
- 20. PHP неудобно объявление функции
- 21. Generic объявление функции
- 22. Объявление функции в ES6?
- 23. неявное объявление функции usleep
- 24. Const объявление функции
- 25. Это объявление функции?
- 26. неявное объявление функции 'create_proc_entry'
- 27. Неявное объявление функции 'clock'
- 28. Объявление функции как переменная
- 29. Объявление функции в полимере
- 30. Объявление функции в JavaScript
Вы должны показать свой код, иначе никто не сможет вам помочь. Но обратите внимание, что в C вы не можете * определить * функцию внутри другой. – Renzo
http://stackoverflow.com/questions/957592/functions-inside-functions-in-c – Rob
Может быть, вместо этого использовать Pascal? :) –