Browse Source

Hello C

master
tth 1 year ago
parent
commit
b40e73ba5c
  1. 3
      .gitignore
  2. 56
      chap/C.tex
  3. 5
      code/Makefile
  4. 16
      code/arguments.c
  5. 7
      code/hello.c
  6. 1
      main.tex

3
.gitignore vendored

@ -17,6 +17,9 @@ code/a.out @@ -17,6 +17,9 @@ code/a.out
code/foo
code/thread-demo
code/ex_curses
code/hello
code/arguments

56
chap/C.tex

@ -0,0 +1,56 @@ @@ -0,0 +1,56 @@
\chapter{Langage C}
\label{C}\index{C}
Un chapitre un peu particulier, puisque c'est le début d'une
initiation au langage C pour les non-codeurs qui souhaitent
rentrer dans le sujet à la dure.
% ---------------------------------------------------------
\section{Hello World}
Hop, on y va...
Le tout début d'un programme en C est l'appel par
le \textsl{runtime} d'une fonction
nommée \texttt{main} qui reçoit deux paramètres
dont l'utilisation est décrite un peu plus bas.
\lstinputlisting[language=c]{code/hello.c}
Voila, c'est fait. Nous savons dire bonjour au monde.
Point suivant~: dire boujour à quelqu'un d'autre. Et pour
cela il nous fait récupérer un argument depuis la ligne
de commande.
% ---------------------------------------------------------
\section{Arguments}
Expliquons maintenant les deux paramètres
\texttt{argc} et \texttt{argv}.
Le premier est le nombre de "mots" détectés par l'interpréteur
de commande qui va lancer votre proggy, et le second est
un tableau contenant ces différents mots.
\lstinputlisting[language=c]{code/arguments.c}
\begin{verbatim}
$ ./arguments un deux "trois quatre"
0 ./arguments.
1 un.
2 deux.
3 trois quatre.
$
\end{verbatim}
% ---------------------------------------------------------

5
code/Makefile

@ -10,3 +10,8 @@ ex_curses: ex_curses.c Makefile @@ -10,3 +10,8 @@ ex_curses: ex_curses.c Makefile
thread-demo: thread-demo.c Makefile
gcc -Wall -pthread $< -o $@
hello: hello.c Makefile
gcc -Wall $< -o $@
arguments: arguments.c Makefile
gcc -Wall $< -o $@

16
code/arguments.c

@ -0,0 +1,16 @@ @@ -0,0 +1,16 @@
/*
* afficher les arguments.
*/
#include <stdio.h>
int main(int argc, char *argv[])
{
int foo;
for (foo=0; foo<argc; foo++) {
printf("%3d %s\n", foo, argv[foo]);
}
return 0;
}

7
code/hello.c

@ -1,6 +1,11 @@ @@ -1,6 +1,11 @@
/*
* Hello, Sun.
*/
#include <stdio.h>
int main(int argc, char *argv[])
{
printf("Hello world.\n");
printf("hello world.\n");
return 0;
}

1
main.tex

@ -118,6 +118,7 @@ en ligne sur le site du Tetalab. Your mileage may vary\dots @@ -118,6 +118,7 @@ en ligne sur le site du Tetalab. Your mileage may vary\dots
\input{chap/GMP}
\input{chap/Python}
\input{chap/dino}
\input{chap/C.tex}
\input{chap/textes}
\input{chap/MINITEL}
\input{chap/Raspberry}

Loading…
Cancel
Save