Единственное авторитетное место для поиска этого материала находится в стандарте C.
Окончательные версии стандартов стоят денег, но вот копия модификации ISO C99 после стандартизации (то есть ISO / IEC 9899: 1999), включающая исправления, опубликованные в 2001 и 2004 годах:
http://www.open -std.org / ОТК1 / SC22 / WG14 / WWW / Docs / n1124.pdf
Если вам нужен стандарт C89, вам, возможно, придется его купить, хотя в Интернете вы можете получить предварительные проекты черновиков, которые практически не отличаются от стандарта.
Не ищите его на cplusplus.com, который в первую очередь определяет версии функций на C ++, которые вам не нужны. Во-первых, они иногда отличаются от любой версии C (например, strchr
), а во-вторых, C99 ввел ограничение по ключевым словам во многих стандартных сигнатурах функций.
Не ищите его в Википедии (которая не завершена). Даже не ищите это в документации GNU libc (которая в любом случае суммирует описания функций), так как это документальное поведение гарантировано glibc (который вы даже не используете), но не гарантируется стандартом (так что другие реализации будут отличается).
На самом деле, я признаюсь, я часто смотрю этот материал на opengroup.org. Но это потому, что я (а) ленив и (б) часто работаю с системами POSIX, поэтому включение стандарта C в POSIX является актуальным. Я не рекомендовал бы это как ссылку на новичка с C в не-POSIX системе.
Однако, поскольку вы работаете в системе Microsoft, поиск в MSDN также будет действительным, если вы не пытаетесь писать переносимый код. Фактически, популярные компиляторы C (включая MS и GCC) в настоящее время реализуют что-то среднее между C89 и C99, поэтому на практике вы не можете написать «стандартный C99». Вместо этого вы должны обратиться к документации вашего компилятора в дополнение к стандарту.