1 | %\subsubsection{Le langage C} |
---|
2 | \begin{frame}[fragile] |
---|
3 | \frametitle{Langages compilés - Le langage C} |
---|
4 | \begin{exampleblock}<1->{Généralités} |
---|
5 | \begin{itemize} |
---|
6 | \item aussi appelé \og macro assembleur \fg |
---|
7 | |
---|
8 | % parce que \mode créer une ligne vide, on repete tout :\ |
---|
9 | \mode<presentation>{ |
---|
10 | \item compilateurs gratuits (gcc, Microsoft, |
---|
11 | \ldots) ou payants (icc, Borland~c, Ms~Visual~Studio, \ldots) |
---|
12 | }\mode<article>{ |
---|
13 | \item compilateurs gratuits (gcc, Microsoft |
---|
14 | \footnote{http://www.microsoft.com/downloads/en/details.aspx?FamilyID=6b6c21d2-2006-4afa-9702-529fa782d63b\&displaylang=en}, |
---|
15 | \ldots) ou payants (icc, Borland~c, Ms~Visual~Studio, \ldots) |
---|
16 | } |
---|
17 | |
---|
18 | \item gestion manuelle de la mémoire uniquement (\texttt{malloc()}, \texttt{free()}, |
---|
19 | \ldots) |
---|
20 | \item langage normalisé (ANSI, C89, C99) |
---|
21 | \end{itemize} |
---|
22 | \end{exampleblock} |
---|
23 | |
---|
24 | \begin{block}<2->{Aspects scientifiques} |
---|
25 | \begin{itemize} |
---|
26 | \item quelques librairies scientifiques, majoritairement payantes |
---|
27 | \item langage peu recommandé pour du calcul scientifique |
---|
28 | \end{itemize} |
---|
29 | \end{block} |
---|
30 | \end{frame} |
---|
31 | |
---|
32 | \begin{frame}{Langages compilés - Le langage C} |
---|
33 | \begin{block}{Aspects informatiques} |
---|
34 | \begin{itemize} |
---|
35 | \item support multithread selon OS et librairies systÚme (openMP selon |
---|
36 | compilateurs) |
---|
37 | \item parallélisation via librairies externes (MPI) |
---|
38 | \item portable si le code est prévu pour, nécessite une recompilation du code |
---|
39 | \item librairies de lecture/écriture de fichiers NetCDF/HDF/FITS |
---|
40 | \item interopérable avec beaucoup de langages |
---|
41 | \end{itemize} |
---|
42 | \end{block} |
---|
43 | \end{frame} |
---|
44 | |
---|
45 | \begin{frame}{Langages compilés - Le langage C} |
---|
46 | \begin{block}{Support au développement} |
---|
47 | \begin{itemize} |
---|
48 | \item documentation automatique avec doxygen |
---|
49 | \item nombreux IDE disponibles |
---|
50 | \item tests unitaires : Cunit |
---|
51 | \end{itemize} |
---|
52 | \end{block} |
---|
53 | \end{frame} |
---|
54 | |
---|