Si vous écrivez int m[1000000];
à l'intérieur de la fonction principale de C/C++, il y aura une erreur d'exécution pour le dépassement de pile. Au lieu de cela, si vous écrivez vector<int> m;
, puis push_back 1000000 éléments là-bas, il fonctionnera bien.Dépassement de pile - mémoire statique ou mémoire dynamique
Je suis très curieux de savoir pourquoi cela se produit. Ils sont tous les deux la mémoire locale, n'est-ce pas? Merci d'avance.
duplication possible de [Y at-il une limite de longueur de tableau maximale en C++?] (Http://stackoverflow.com/questions/216259/is-there-a-max-array-length-limit-in-c) –
Qu'entendez-vous par "mémoire" locale? – nobar
"Faites le bien, alors faites vite." –