Мой опыт работы на C в основном из второго издания The C Programming language, который является очень старой книгой. Что изменилось в C с момента его выпуска, какие устаревшие или устаревшие функции следует избегать?Что изменилось с тех пор, как «Язык программирования C»
ответ
Вы также можете ознакомиться с спецификациями 'C', которые появились после (например, C99). Эти спецификации будут указывать, что они добавили/удалили/изменили по отношению к предыдущему стандарту.
http://en.wikipedia.org/wiki/C_%28programming_language%29
http://en.wikipedia.org/wiki/C99
http://en.wikipedia.org/wiki/C89_%28C_version%29
Если вы хотите увидеть, что имеет место для 'C' будущее, посмотрим на C1x, которая является стандартной наступающего 'C'.
+1 Это хорошие направления. – karlphillip
Если вы можете получить копию стандарта ISO C99, предисловие содержит хороший список 2-страничный основных изменений с C90.
Существует проект C99, доступный в Интернете в формате PDF. Google «C99 pdf», и это должен быть первый результат. –
Не сильно изменилось. Для большинства практических целей язык, описанный в K & R2, по-прежнему используется. В 1999 году появился новый стандарт C, но он не был принят столь же успешно и широко, как вариант стандарта 1989 года (который также описывает K & R2).
Наиболее важные изменения в C99, которые могли бы разорвать существующие программы являются:
- неявное предположение о типе
int
в объявлениях была удалена. Просто убедитесь, что вы всегда четко указываете типы своих функций и переменных. - Вызов функции без предварительного объявления устарел. Просто убедитесь, что вы объявляете все функции перед использованием, предпочтительно с прототипом.
Оба они были задерживаемыми от достандартных дней и считались плохой практикой в течение длительного времени.
Единственная функция, которая следует избегать (и всегда была) gets()
.
- 1. Что такое язык программирования?
- 2. Что делает язык программирования быстрым?
- 3. C язык программирования (scanf)
- 4. Язык программирования MySQL & c
- 5. c язык программирования, указатель
- 6. C язык программирования
- 7. Что такое серверный язык программирования?
- 8. C язык программирования, кратчайший путь
- 9. Что это за язык программирования?
- 10. Что такое язык программирования D?
- 11. C++ язык программирования и школа
- 12. C язык программирования Структура графика
- 13. C язык программирования, полезные программы
- 14. Язык программирования веб-программирования
- 15. C язык программирования, массив, указатель
- 16. C язык программирования, алгоритм Флойда
- 17. C язык программирования сценариев против
- 18. c язык программирования - declare() function
- 19. C язык программирования помогает мне?
- 20. Язык программирования программирования RISC
- 21. Язык программирования с именем «C Set 2»
- 22. C язык программирования, проблемы с памятью
- 23. Что такое язык программирования этого фрагмента кода?
- 24. Agda как язык программирования
- 25. Язык программирования с инфляцией
- 26. Загадочный язык программирования
- 27. Как убрать язык программирования
- 28. Как работает язык программирования?
- 29. Что использовать с тех пор, как приложение «Марионетка» Регионы устарели
- 30. Язык программирования C Упражнение 1-14
Почему это помечено знаком «kr-c»? Книга K & R2 рассматривает ANSI C, а не K & R C. – schot
Аналогичный вопрос: http://stackoverflow.com/questions/2892951/list-of-deprecated-c-functions. Там есть хорошие ответы. Посмотрите на первый комментарий * KennyTM *. – karlphillip