Bonjour à tous
Je travaille essentiellement en Arduino, et à force de chercher des réponses à un problème j'arrive au langage C.
Voici le code qui va servir de base à mes question:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
 
void foo(int *a)
{
 *a = 145; // On change ce qu'il y a à l'adresse de a
 printf("Foo: Variable a = %d\n", *a); // *a == 145
}
 
int main(void)
{
 int a;
 
 a = 10;
 printf("Main: Variable a = %d\n", a); // a == 10
 foo(&a); // On passe l'adresse de a
 printf("Main: Variable a = %d\n", a); // a == 145
 return (0);
}
- Ma première question concerne le "&" dans ==> foo(&a); correspond t-il bien à l'adresse de la variable "a" ?
- A quoi sert le "*" dans ==> void foo(int *a)
- Et pour finir à quoi sert "int" dans ==> int main(void)
- est ce que le "void" est indispensable dans ==> int main(void)

Merci par avance