François Trahay
Objectifs du module:
Modalités:
Partie Programmation
Partie Système
Evaluation
Système de classe inversée. Pour chaque séance :
Avant la séance
Pendant la séance:
Attention ! Cela ne fonctionne que si vous travaillez sérieusement avant la séance.
Hypothèse: les étudiants suivant ce cours sont des adultes responsables.
Pour vous aider, vous avez à votre disposition:
man 2 <fonction>
man 3 <fonction>
Fichier *.c
/* hello_world.c */ #include <stdio.h> #include <stdlib.h> int main(int argc, char** argv) { printf("Hello World!\n"); return EXIT_SUCCESS; }
Compilation/execution:
$ gcc hello_world.c -o hello_world -Wall -Werror $ ./hello_world Hello World!
Pour les types simples, déclaration identique à Java:
int var1; int var2, var3, var4; int var5 = 42;
Types disponibles:
int
short
long
long long
float
double
char
La liste des opérateurs disponibles est à peu près la même qu’en Java:
+
-
*
/
\%
=
+=
-=
*=
/=
\%=
++
{-
<
<=
>
>=
==
!=
!
&&
||
Mais également:
sizeof n
n
Possibilité de travailler sur des champs de bits.
<<
>>
|
&
^
~
<<=
>>=
|=
&=
^=
~=
Comme en Java:
for(i=0; i<n; i++) { ... }
while(cond) {... }
do { ... } while(cond);
if (cond) { ... } else { ... }
printf("%d exemple de %f format \n", v1, v2);
scanf("%d-%f", &v1, &v2);
Déclaration:
type_retour nom_fonc(type_param1 param1, type_param2 param2) { /* déclaration des variables locales */ /* instructions à exécuter */ }