Un langage compilé est une langue qui convertit le code source en code machine. Aussi connu comme une application native.
Un langage interprété est un langage qui convertit le code source en un intermédiaire. Pendant l'exécution du programme, un interpréteur exécute le code source. Les langages interprétés ont tendance à être, mais pas toujours, significativement plus lents que les langages compilés. Ils sont utiles, cependant, pour la portabilité.
C est compilé, transformant le code source:
for (int i=1;i<=100;i++) { printf("%d",i); }
dans l'assemblage, puis en code machine. Le processeur récupère chaque instruction machine et l'exécute. C'est très rapide. Java, cependant, convertit le code source en un code octet intermédiaire. Au moment de l'exécution, il est exécuté sur une "machine virtuelle", ce qui peut être plus lent qu'une application compilée native.
balises intéressants ... –
double possible de [ Runtime vs Compile time] (http://stackoverflow.com/questions/846103/runtime-vs-compile-time). Notez également que votre demande concernant java et c est difficile comme je l'interprète (heh!). Ni java ni c sont généralement interprétés, et décrivant le travail de l'un ou l'autre type de programme dans ces langues prend un petit livre. – dmckee
Les langues ne peuvent généralement pas être catégorisées comme interprétées ou compilées. La plupart des langues peuvent être interprétées et compilées. Cette distinction ne joue que lorsque nous parlons d'une implémentation spécifique. – svenningsson