Skip to content
Snippets Groups Projects
Verified Commit afb4450e authored by orestis.malaspin's avatar orestis.malaspin
Browse files

layout

parent 28e2a551
Branches
No related tags found
No related merge requests found
Pipeline #23730 passed
...@@ -22,9 +22,9 @@ Pour reprendre dans la joie après les ~~vacances~~ **semaines sans cours**. ...@@ -22,9 +22,9 @@ Pour reprendre dans la joie après les ~~vacances~~ **semaines sans cours**.
. . . . . .
```C ```C
// type *variable; // type * variable;
double *d; double * d;
struct element *e; struct element * e;
``` ```
* `double *` est le **type** de `d` et `struct element *` est le **type** de `e`. * `double *` est le **type** de `d` et `struct element *` est le **type** de `e`.
...@@ -36,7 +36,7 @@ struct element *e; ...@@ -36,7 +36,7 @@ struct element *e;
```C ```C
int c = 2; int c = 2;
// On assigne l'adresse de c au pointeur p_c // On assigne l'adresse de c au pointeur p_c
int *p_c = &c; int * p_c = &c;
// On déréférence un pointeur // On déréférence un pointeur
*p_c = 4; *p_c = 4;
``` ```
...@@ -49,9 +49,9 @@ int *p_c = &c; ...@@ -49,9 +49,9 @@ int *p_c = &c;
```C ```C
// l'adresse 0 ou NULL // l'adresse 0 ou NULL
double *e = NULL; double * e = NULL;
*e = 10; // Runtime error... *e = 10; // Runtime error...
double *e; double * e;
*e = 10; // Maybe error (e has a random value)... *e = 10; // Maybe error (e has a random value)...
``` ```
...@@ -71,7 +71,7 @@ uint64_t c = 2; ...@@ -71,7 +71,7 @@ uint64_t c = 2;
## Dans les arguments des fonctions ## Dans les arguments des fonctions
```C ```C
void modif_argument(int *val) { void modif_argument(int * val) {
*val = 5; *val = 5;
} }
int main() { int main() {
...@@ -86,9 +86,9 @@ int main() { ...@@ -86,9 +86,9 @@ int main() {
```C ```C
int main() { int main() {
int *var = malloc(sizeof(*var)); int * var = malloc(sizeof(*var));
struct element *revar = malloc(sizeof(struct element)); struct element * revar = malloc(sizeof(struct element));
double *tab = malloc(10 * sizeof(*tab)); double * tab = malloc(10 * sizeof(*tab));
free(var); free(var);
free(revar); free(revar);
free(tab); // oui il faut pas oublier de désallouer free(tab); // oui il faut pas oublier de désallouer
...@@ -100,11 +100,11 @@ int main() { ...@@ -100,11 +100,11 @@ int main() {
## Allouer de la mémoire sur le tas dans fonction ## Allouer de la mémoire sur le tas dans fonction
```C ```C
void modif_argument(int **val) { void modif_argument(int ** val) {
*val = malloc(sizeof(int)); *val = malloc(sizeof(int));
} }
int main() { int main() {
int *var = NULL; int * var = NULL;
modif_argument(&var); // on passe l'adresse de var et donc on alloue modif_argument(&var); // on passe l'adresse de var et donc on alloue
} }
``` ```
...@@ -114,11 +114,11 @@ int main() { ...@@ -114,11 +114,11 @@ int main() {
## Que se passerait-il si.... ## Que se passerait-il si....
```C ```C
void modif_argument(int *val) { void modif_argument(int * val) {
val = malloc(sizeof(int)); val = malloc(sizeof(int));
} }
int main() { int main() {
int *var = NULL; int * var = NULL;
modif_argument(var); modif_argument(var);
} }
``` ```
...@@ -135,7 +135,7 @@ int main() { ...@@ -135,7 +135,7 @@ int main() {
* On peut allouer un tableau et le manipuler avec les pointeurs: * On peut allouer un tableau et le manipuler avec les pointeurs:
```C ```C
float *tab = malloc(12 * sizeof(*tab)); float * tab = malloc(12 * sizeof(*tab));
*tab = 1.2; // première case de tab = 1.2 *tab = 1.2; // première case de tab = 1.2
tab[0] = 2.3; // première case de tab = 2.3 tab[0] = 2.3; // première case de tab = 2.3
tab[2] = 3.4; // 3e case de tab = 3.4 tab[2] = 3.4; // 3e case de tab = 3.4
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment