Réponse acceptée !
coucou747 à déjà pointé tes erreurs, donc je vais me concentrer sur des conseils:
- Évite les "using namespace", voir:
[ Lien ]
- Évite les variables globales
- ::c++ ? Pourquoi ajouter "::" ? Il n'y a pas d'ambiguïté ici.
- return 0, plutôt que EXIT_SUCCESS. C'est portable et plus clair.
- Déclare tes variables au moment où tu en as besoin. Le int i peut se déclarer dans la boucle.
- En C++, prend l'habitude de faire ++i dans une boucle plutôt que i++. Pour des entiers, ça ne change strictement rien, je suis d'accord, mais quand tu travailleras avec des collections, et donc avec des iterators, ça fera une grande différence.
- #include <cstdlib> => Inutile
- Préfère un std::vector<int> plutôt qu'un int tab[5];
Je réécrirais ton code comme suit:
Code C/C++ :
#include <iostream>
int main(int argc, char *argv[])
{
int c;
int tab[5];
std::cout << "c:";
std::cin >> c;
// Avec pourquoi pas un: tab.resize(5); si la taille est connue.
// A noter que qu'un std::vector se redimensionne tout seul, c'est donc juste une optimisation.
for(int i = 0; i < 5; ++i)
tab[i] = c++;
for(int i = 0; i < 5; ++i)
std::cout << tab[i] << std::endl;
return 0;
}
En version plus C++:
Code C/C++ :
#include <iostream>
#include <vector>
int main(int argc, char *argv[])
{
int c;
std::vector<int> tab;
std::cout << "c:";
std::cin >> c;
for(int i = 0; i < 5; ++i)
tab.push_back(c++);
for(std::vector<int>::const_iterator it = tab.begin(); it != tab.end(); ++it)
std::cout << *it << std::endl;
return 0;
}
________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question