Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between C and embedded C?

Tags:

c

embedded

People also ask

Is C and Embedded C is different?

C is a high-level programming language. Embedded C is just the extension variant of the C language. This programming language is hardware independent. On the other hand, embedded C language is truly hardware dependent.

What is meant by Embedded C?

Embedded C is a set of language extensions for the C programming language by the C Standards Committee to address commonality issues that exist between C extensions for different embedded systems.

What is the difference between C and Embedded C Quora?

There is only one C language. If you use C on computers then it is called regular C. If you use C on Electronics then it is called "Embedded C". In both the cases the compiled C program is executed by the Microprocessor only.

Is Embedded C and embedded systems are same?

And, this kind of system consists of electrical and mechanical components. Each embedded system has a microcontroller to manage and control the functionalities. Embedded C is an extension of C language that helps to develop embedded systems. In other words, it helps to program microcontroller based systems.


In the C standard, a standalone implementation doesn't have to provide all of the library functions that a hosted implementation has to provide. The C standard doesn't care about embedded, but vendors of embedded systems usually provide standalone implementations with whatever amount of libraries they're willing to provide.

C is a widely used general purpose high level programming language mainly intended for system programming.

Embedded C is an extension to C programming language that provides support for developing efficient programs for embedded devices.It is not a part of the C language

You can also refer to the articles below:

  • Difference between C and Embedded C
  • Embedded C
  • ISO/IEC J TC1 SC22 WG14 N1169

Embedded C is generally an extension of the C language, they are more or less similar. However, some differences do exist, such as:

  • C is generally used for desktop computers, while embedded C is for microcontroller based applications.

  • C can use the resources of a desktop PC like memory, OS, etc. While, embedded C has to use with the limited resources, such as RAM, ROM, I/Os on an embedded processor.

  • Embedded C includes extra features over C, such as fixed point types, multiple memory areas, and I/O register mapping.

  • Compilers for C (ANSI C) typically generate OS dependant executables. Embedded C requires compilers to create files to be downloaded to the microcontrollers/microprocessors where it needs to run.

Refer difference between C and embedded C


Basically, there isn't one. Embedded refers to the hosting computer / microcontroller, not the language. The embeddded system might have fewer resources and interfaces for the programmer to play with, and hence C will be used differently, but it is still the same ISO defined language.


1: C is a type of computer programming language. While embedded C is a set of language extensions for the C Programming language.

2: C has a free-format program source code, in a desktop computer. while embedded C has different format based on embedded processor (micro- controllers/microprocessors).

3: C have normal optimization, in programming. while embedded C high level optimization in programming.

4: C programming must have required operating system. while embedded C may or may not be required operating system.

5: C can use resources from OS, memory, etc, i.e all resources from desktop computer can be used by C. while embedded C can use limited resources, like RAM, ROM, and I/Os on an embedded processor.


Embedded environment, sometime, there is no MMU, less memory, less storage space. In C programming level, almost same, cross compiler do their job.