相对于C,其它高级语言的运行效率一般比较低(C程序运行效率可达汇编的80%,而其它程序可能只有C程序的80%),源代码和目标代码也可能会比较长。对于嵌入式系统,性能的瓶颈是非常致命的,很可能某种用C编写的程序可以达到预期目标,而用其它语言使用同样算法编写的程序就不行。(不过也正因为这个原因,在嵌入式系统上实现的可用编程语言并不多。)
基于系统的用途,安全性设计嵌入式系统也是必须考虑的一个部分(比如说用于医疗卫生设施),必须尽可能在开发期间减少潜在的错误。这方面C不占优势,但如果保证代码严格遵守安全规范,也可以接受(相对而言,汇编就郁闷了- -)。