La mise à jour d'une variable globale dans C

J'ai un débutant C question. Je veux dans le code ci-dessous...

include <stdio.h>

void iprint();
int i=0;

int main()
{
  int j;

  for (j=0; j<50; j++)
    {
      iprint(i);
      printf("%d\n",i);
    }
}

void iprint(i)
{
  i +=1;
  //printf("%d\n",i); 
}

... la fonction "iprint" pour mettre à jour la valeur de i chaque heure est-il appelé, par exemple, la mise à jour je, de sorte qu'il peut être utilisé dans la main avec la valeur 1 pour l'itération 2, et 3 pour l'itération 2, etc.

Je l'ai accompli en modifiant le code de cette fonction:

 include <stdio.h>

int iprint();
int i=0;

int main()
{
  int j;

  for (j=0; j<50; j++)
    {
      i= iprint(i);
      printf("%d\n",i);
    }
}

int iprint(i)
{
  i +=1;
  //printf("%d\n",i); 
  return(i);
}

Dois-je retourner(i) pour le faire? La raison de la demande, c'est que si j'ai beaucoup de fonctions à l'aide de je, c'est un peu ennuyeux d'avoir à passer entre eux. Si vous au lieu, en quelque sorte, j'ai pu mettre à jour comme la mise à jour d'une variable globale dans matlab, ce serait sympa. Est-il possible?

InformationsquelleAutor user2466382 | 2013-09-23