Язык Си считается платформо-независимым, потому что он разрабатывался как язык системного программирования, для которого можно создать однопроходный компилятор. 2 Стандартная библиотека также невелика, поэтому компиляторы разрабатываются сравнительно легко. 2 Как следствие, язык доступен на самых различных платформах. 2
Кроме того, язык ориентирован на переносимость. 2 Программы, соответствующие стандарту языка, могут компилироваться под различные архитектуры компьютеров. 2
Также, чтобы уйти от платформенной зависимости, начиная со стандарта C99 в язык была добавлена поддержка платформо-независимых числовых типов. 5 Они определены в заголовчном файле stdint.h и имеют названия по следующему шаблону: uint|int[размер]_t, где в качестве размера указывается количество бит — 8, 16, 32 или 64. 5