|
Titlul: Compilare/executie in MinGW Scris de: Parfene Narcis din Decembrie 27, 2009, 12:35:57 As avea doua intrebari:
Prima ar fi daca un evaluator face verificarea memoriei/stivei utilizate la compilarea sau la executia unui program. A doua intrebare: daca voi compila (sub Windows) un program in MinGW cu o comanda de genul g++.exe test.cpp -o test.exe exista vreun parametru suplimentar care se poate adauga si care limiteaza memoria utilizata? Multumesc si sarbatori fericite! Titlul: Răspuns: Compilare/executie in MinGW Scris de: Sima Cotizo din Decembrie 27, 2009, 12:46:00 Verificarile astea se fac la rulare. Imagineaza-ti ca ai un program care citeste N numere de la tastatura si le baga in stiva. La compilare programul nu va sti niciodata cate numere ai tu de gand sa introduci si, ca atare, daca depasesti limita de memorie sau nu. Ma indoiesc deci ca ar fi vreun flag de compilare pentru asa ceva.
In alt topic (http://infoarena.ro/forum/index.php?topic=4392.0) a postat Toni doua linkuri catre doua evaluatoare. Incearca sa le folosesti pe acelea. Titlul: Răspuns: Compilare/executie in MinGW Scris de: Pripoae Teodor Anton din Decembrie 27, 2009, 14:24:35 Daca lucrezi cu freepascal se poate limita la compilare.
Titlul: Răspuns: Compilare/executie in MinGW Scris de: Parfene Narcis din Decembrie 27, 2009, 16:12:59 Ok, multumesc pentru raspunsuri.
Totusi, eu m-am gandit ca daca limita de memorie este 2 MB si eu declar int a[1 000 000]; deja am depasit, doar alocarea statica se face la compilare, nu? Evaluatorul "lime_v0.9.5.26" l-am descarcat si imi da un mesaj la lansarea in executie "The application failed to initialize properly (0xc0000135). Click on OK to terminate the application". Titlul: Răspuns: Compilare/executie in MinGW Scris de: Savin Tiberiu din Decembrie 27, 2009, 17:04:40 Nu este adevarat. Alocarile de memorie se fac la executie nu la compilarea. Compilarea nu face altceva decat sa traduca codul tau in cod binar :P.
Titlul: Răspuns: Compilare/executie in MinGW Scris de: Pripoae Teodor Anton din Decembrie 27, 2009, 23:24:32 Ti-a dat acel mesaj probabil pt ca nu ai instalat .NET framework.
Titlul: Răspuns: Compilare/executie in MinGW Scris de: Parfene Narcis din Decembrie 28, 2009, 07:51:40 Asa e, nu am instalat .net framework. Multumesc de indicatie!
Dar poate imi zici si cum faci verificarea dimensiunii memoriei la executie? :D Titlul: Răspuns: Compilare/executie in MinGW Scris de: Pripoae Teodor Anton din Decembrie 28, 2009, 08:24:44 Nu mai stiu cum face. Cand l-am intrebat pe autor mi-a zis ca facea cu threaduri, dar avand in vedere ca pe vremea aia nu prea stiam mare lucru despre asta, am uitat :). Oricum vezi aceasta functie (http://msdn.microsoft.com/en-us/library/ms686234(VS.85).aspx).
Titlul: Răspuns: Compilare/executie in MinGW Scris de: Parfene Narcis din Decembrie 28, 2009, 22:47:10 Mai am o intrebare, daca se poate.
In MinGW cum rulez un program cu parametri? Adica am functia main asa: int main(int n, char *v[]) cum pun parametrii? Stiu ca in BorlandC puneam in Run->Parameters. Multumesc! Titlul: Răspuns: Compilare/executie in MinGW Scris de: George Popoiu din Decembrie 28, 2009, 23:09:24 poi daca executabilul este test.exe si ai int main(int n,char *v) la rulare faci
test 10 unsirdecaractere n=10; v="unsirdecaractere"; Titlul: Răspuns: Compilare/executie in MinGW Scris de: Pripoae Teodor Anton din Decembrie 28, 2009, 23:13:10 Cod: int main(int argc, char ** argv) {Titlul: Răspuns: Compilare/executie in MinGW Scris de: Sima Cotizo din Decembrie 28, 2009, 23:39:46 poi daca executabilul este test.exe si ai int main(int n,char *v) la rulare faci test 10 unsirdecaractere n=10; v="unsirdecaractere"; n nu e 10. n e 3 ("test", "10", "unsirdecaractere" -> 3 parametrii, din care primul este numele executabilului). Titlul: Răspuns: Compilare/executie in MinGW Scris de: Parfene Narcis din Decembrie 29, 2009, 12:40:10 Rularea asa cu parametri stiam deja, eu am intrebat altceva:
Cum pun parametrii in mediul MinGW astfel incat sa dau CTRL+F5 (executie), iar parametrii sa fie pusi undeva cu vreo optiune din meniu. Cum am mai zis: in BorlandC puneam parametrii in Run->Programs apoi dadeam CTRL+F9. Ceva similar in MinGW ? Titlul: Răspuns: Compilare/executie in MinGW Scris de: alexandru din Decembrie 29, 2009, 12:52:59 Se face din cmd.
Cod: cd "path" //path catre executabilul programului |