•blasterz
|
|
« : Februarie 18, 2008, 18:54:22 » |
|
Victor, nu poti sa sustii MinGW sau DevCPP pentru olimpiada. Nu sunt compilatoare standard, au si ele destule buguri; sunt bune de folosit la clasa, dar nu poti sa le folosesti la concursuri. Daca tot vrem sa facem o treaba trebuie mers pe solutii cat mai bune. Eu zic (cum vorbeam de curand si cu Wefgef) ca ar fi bine sa mergem pe ideea de a folosi Visual Studio 2005 (sau ceva din categoria asta)/fpc in Windows si gcc/g++/fpc in Linux. E bine? E rau? Va rog veniti cu argumente. Si, mai ales, hai sa ne indreptam atentia asupra compilatoarelor, nu asupra unui nou sistem de evaluare la olimpiada (buna ideea Cosmin, dar e greu de schimbat tot deodata... macar de s-ar schimba compilatoarele vechi), sau asupra problemelor profesorilor din licee (uneori un ton ca cel folosit in mesajele anterioare poate jigni). Daca vrem sa se schimbe ceva trebuie sa abordam fiecare problema punctual, fara a ne pierde in detalii.
PS: Motivul pentru care ma preocupa chestia asta este ca, cel putin pentru moment, sunt presedinte al comisiei de la olimpiada, si as vrea sa rezolvam cat mai multe chestiuni tehnice care pot afecta desfasurarea concursului.
De ce sa nu sustina mingw pentru olimpiada? Eu personal (cand nu lucrez pe linux) lucrez in mingw studio si pana acum nu am gasit nici cel mai mic bug! Compilatorul este exact ca cel din linux! Mircea Dima
|
|
« Ultima modificare: Februarie 23, 2008, 00:12:33 de către Valentin Stanciu »
|
Memorat
|
|
|
|
•flmanea
Client obisnuit
Karma: 78
Deconectat
Mesaje: 68
|
|
« Răspunde #1 : Februarie 18, 2008, 23:18:20 » |
|
De ce sa nu sustina mingw pentru olimpiada? ... Compilatorul este exact ca cel din linux!
...eu cred ca ar trebui sa mai studiezi.
|
|
|
Memorat
|
|
|
|
•blasterz
|
|
« Răspunde #2 : Februarie 19, 2008, 10:19:49 » |
|
De ce sa nu sustina mingw pentru olimpiada? ... Compilatorul este exact ca cel din linux!
...eu cred ca ar trebui sa mai studiezi. Puteti sa-mi dati un exemplu? eu zic ca am studiat destul 4 ani de liceu. . .
|
|
|
Memorat
|
|
|
|
•toni2007
|
|
« Răspunde #3 : Februarie 21, 2008, 16:31:14 » |
|
Victor, nu poti sa sustii MinGW sau DevCPP pentru olimpiada. Nu sunt compilatoare standard, au si ele destule buguri; sunt bune de folosit la clasa, dar nu poti sa le folosesti la concursuri. Daca tot vrem sa facem o treaba trebuie mers pe solutii cat mai bune. Eu zic (cum vorbeam de curand si cu Wefgef) ca ar fi bine sa mergem pe ideea de a folosi Visual Studio 2005 (sau ceva din categoria asta)/fpc in Windows si gcc/g++/fpc in Linux. E bine? E rau? Va rog veniti cu argumente. Si, mai ales, hai sa ne indreptam atentia asupra compilatoarelor, nu asupra unui nou sistem de evaluare la olimpiada (buna ideea Cosmin, dar e greu de schimbat tot deodata... macar de s-ar schimba compilatoarele vechi), sau asupra problemelor profesorilor din licee (uneori un ton ca cel folosit in mesajele anterioare poate jigni). Daca vrem sa se schimbe ceva trebuie sa abordam fiecare problema punctual, fara a ne pierde in detalii.
PS: Motivul pentru care ma preocupa chestia asta este ca, cel putin pentru moment, sunt presedinte al comisiei de la olimpiada, si as vrea sa rezolvam cat mai multe chestiuni tehnice care pot afecta desfasurarea concursului.
De ce sa nu sustina mingw pentru olimpiada? Eu personal (cand nu lucrez pe linux) lucrez in mingw studio si pana acum nu am gasit nici cel mai mic bug! Compilatorul este exact ca cel din linux! Mircea Dima are si mingw bugguri... inclusiv ca nu poate compila decat proiecte... din cate stiu... si plus ca exista cazuri cand se buleste de tot si trebuie reinstalat
|
|
|
Memorat
|
|
|
|
•blasterz
|
|
« Răspunde #4 : Februarie 22, 2008, 09:21:53 » |
|
are si mingw bugguri... inclusiv ca nu poate compila decat proiecte... din cate stiu... si plus ca exista cazuri cand se buleste de tot si trebuie reinstalat Eu il folosesc de 3 ani si nu mi s-a intamplat niciodata sa se buleasca. Alte buguri inafara de partea cu compilarea proiectelor (desi mie nu mi se pare un bug...) mai stii? Prin bug ma refer la nefunctionarea IDE-ului sau nefunctionarea compialtorului.
|
|
|
Memorat
|
|
|
|
•andrei.12
|
|
« Răspunde #5 : Februarie 22, 2008, 09:47:53 » |
|
De exemplu, daca vrei sa citesti si sa scrii numere de tipul long long trebuie sa folosesti formatul %I64d (%lld nu merge). Acesta nu este un bug, dar este diferit fata de compilatoarele de pe linux. Cu toate acestea si eu lucrez acasa numai in MinGW, si cred ca ar fi o idee foarte buna sa se puna la OJI, mai ales ca este mai stabil si mai usor de instalat decat RHIDE.
|
|
|
Memorat
|
|
|
|
•blasterz
|
|
« Răspunde #6 : Februarie 22, 2008, 10:51:32 » |
|
De exemplu, daca vrei sa citesti si sa scrii numere de tipul long long trebuie sa folosesti formatul %I64d (%lld nu merge). Acesta nu este un bug, dar este diferit fata de compilatoarele de pe linux. Cu toate acestea si eu lucrez acasa numai in MinGW, si cred ca ar fi o idee foarte buna sa se puna la OJI, mai ales ca este mai stabil si mai usor de instalat decat RHIDE.
tocmai am testat ce ai spus... si vad ca merge cu lld :-" uite sursa: #include <cstdio>
int main() { long long a=2000000000000000LL; long long b=1234567890123121LL; a=a+b; printf("%lld\n",a); return 0; }
|
|
|
Memorat
|
|
|
|
•andrei.12
|
|
« Răspunde #7 : Februarie 22, 2008, 11:35:07 » |
|
De exemplu, daca vrei sa citesti si sa scrii numere de tipul long long trebuie sa folosesti formatul %I64d (%lld nu merge). Acesta nu este un bug, dar este diferit fata de compilatoarele de pe linux. Cu toate acestea si eu lucrez acasa numai in MinGW, si cred ca ar fi o idee foarte buna sa se puna la OJI, mai ales ca este mai stabil si mai usor de instalat decat RHIDE.
tocmai am testat ce ai spus... si vad ca merge cu lld :-" uite sursa: #include <cstdio>
int main() { long long a=2000000000000000LL; long long b=1234567890123121LL; a=a+b; printf("%lld\n",a); return 0; }
La mine daca la sursa asta citesc 2000000000000000 cu %lld imi afiseaza 1233977344, pe cand cu %I64d e ok. #include<stdio.h>
long long n; int main() { scanf("%lld", &n); printf("%lld\n", n); return 0; }
|
|
|
Memorat
|
|
|
|
•blasterz
|
|
« Răspunde #8 : Februarie 22, 2008, 12:28:42 » |
|
Tu ce versiune de MinGW ai? eu am MinGW Developer Studio 2.05 si imi merge citirea cum ai zis tu am dat mai multe teste... si citeste perfect... inclusiv 2*10^18
|
|
|
Memorat
|
|
|
|
•toni2007
|
|
« Răspunde #9 : Februarie 23, 2008, 15:13:23 » |
|
si Mingw nu merge pe vista Devu merge da nu e chiar un bug
|
|
|
Memorat
|
|
|
|
•blasterz
|
|
« Răspunde #10 : Februarie 23, 2008, 17:57:02 » |
|
si Mingw nu merge pe vista Devu merge da nu e chiar un bug Merge si pe vista (chiar pe x64 )... mie imi merge
|
|
|
Memorat
|
|
|
|
•toni2007
|
|
« Răspunde #11 : Februarie 24, 2008, 09:00:32 » |
|
mi-e nu-mi merge... imi zice cand compilez... : cannot find cc1plus: no such file or directory de fapt nu imi merge nici un gcc pe vista (in afara de ala de la djgpp) si g++ la dev cpp
|
|
|
Memorat
|
|
|
|
•andrei.12
|
|
« Răspunde #12 : Februarie 24, 2008, 10:10:13 » |
|
si Mingw nu merge pe vista Devu merge da nu e chiar un bug Merge si pe vista (chiar pe x64 )... mie imi merge Inseamna ca tu ai un MinGW tare . Si io am tot versiunea 2.05 si nu merge %lld. Oricum, si pe acm.pku.cn ei compileaza cu MinGW si la FAQ zic ca daca vrei sa scrii sau sa citesti numere de tipul long long trebuie sa folosesti %I64d, asa ca e ceva dubios la mijloc
|
|
|
Memorat
|
|
|
|
•devilkind
|
|
« Răspunde #13 : Februarie 24, 2008, 12:20:52 » |
|
si pe sgu e tot Mingw si cu toti stim cat de crappy e
|
|
|
Memorat
|
|
|
|
•rEbyTer
|
|
« Răspunde #14 : August 01, 2008, 22:55:58 » |
|
Nam avut niciodata probleme cu mingw. functioneaza perfect. faza cu %lld mie imi merge.
|
|
|
Memorat
|
|
|
|
•Protoman
|
|
« Răspunde #15 : Martie 27, 2009, 12:21:02 » |
|
salut, eu am intalnit 2 probleme in mingw din pacate... in doar 2 surse scrise;... amandoua legate de debug si variabile locale: 1) intr-o functie cand am pus int s = .., aux = .., b = ..; in watch aux si b erau bine dar s - "not in current context"... i-am zis x in loc de s si a mers ... 2) daca fac for (int i = 2; i <= n; i++) for (int j = 1; j < n; j++) for (int h = 1; h < i; h++) ...
in watch: i = 1, j = 1, h = 1... totusi programul se comporta bine ... adica intra in al 3-lea for din prima ( desi dupa watch nu ar trebui )... daca le declar globale pe i j si h atunci merge bine... Daca imi poate explica cineva de ce se comporta asa as fi profund recunoscator . L.E. : Mentionez ca MinGW - ul l-am downloadat de la http://infoarena.ro/schimbare-borland/pachet
|
|
|
Memorat
|
|
|
|
•svalentin
|
|
« Răspunde #16 : Martie 27, 2009, 12:35:10 » |
|
Mi se pare ca debuggerul din MinGW uneori vede alt scope al variabilelor. Pot sa pun pariu ca in primul caz mai aveai o variabila s declarata pe undeva, dar nu era in scope, iar in al doilea caz mai aveai foruri cu i
|
|
|
Memorat
|
|
|
|
•andrei-alpha
Client obisnuit
Karma: 103
Deconectat
Mesaje: 91
|
|
« Răspunde #17 : Martie 27, 2009, 12:40:45 » |
|
Faza cu s-ul ca nu aparea s-ar putea sa fie de la un define daca ai ceva gen (asa pateam si eu) La debug variabilele iau valoarea doar dupa ce treci de locul unde sunt initializate deci inainte de for aveai niste valori oarecare.
|
|
|
Memorat
|
|
|
|
•Protoman
|
|
« Răspunde #18 : Martie 27, 2009, 12:44:06 » |
|
intr-adevar la al 2-lea mai aveam 2 for-uri cu i ( citirea si o precalculare ) ... ah si da s-ul coincidea inseamna cu #define s second inainte de for aveau valori random mari dupa for au devenit 1 1 1... Mersi mult
|
|
|
Memorat
|
|
|
|
•cvicentiu
Strain
Karma: 2
Deconectat
Mesaje: 15
|
|
« Răspunde #19 : Martie 27, 2009, 15:43:56 » |
|
Nu am testat mingw personal, insa as dori sa pun o intrebare celor care recomanda bloodshed dev-c. Mie cand fac debug mi se intampla sa mi se tot dubleze variabilele monitorizate.
Spre exemplu am v[ i ] o singura data pus la watch. Incep debugu, dupa cateva repetari prin for voi avea in loc de un singur v[ i ] vre-o 5-6. Uneori nu le considera initializate desi ele sunt clar acolo.
Chiar nu ati intalnit aceste buguri? initial am crezut ca este de la mine, la modul cum utilizez eu dev-c-u, dar nu am gasit nici o solutie la aceasta problema => am trecut pe Visual Studio.
Sunt pe vista (x64), dar si la xp pe 32 de biti am patit asa.
|
|
|
Memorat
|
|
|
|
•Mishu91
|
|
« Răspunde #20 : Martie 29, 2009, 09:12:03 » |
|
Aveti idee daca se pot schimba shortcut-urile pentru Build, Compile, Watch, etc. Eu m-am cam obisnuit cu alea din Rhide si le nimeresc cam greu acilea.
|
|
|
Memorat
|
|
|
|
•tvlad
|
|
« Răspunde #21 : Martie 29, 2009, 21:10:12 » |
|
Nu am testat mingw personal, insa as dori sa pun o intrebare celor care recomanda bloodshed dev-c. Mie cand fac debug mi se intampla sa mi se tot dubleze variabilele monitorizate.
Spre exemplu am v[ i ] o singura data pus la watch. Incep debugu, dupa cateva repetari prin for voi avea in loc de un singur v[ i ] vre-o 5-6. Uneori nu le considera initializate desi ele sunt clar acolo.
Chiar nu ati intalnit aceste buguri? initial am crezut ca este de la mine, la modul cum utilizez eu dev-c-u, dar nu am gasit nici o solutie la aceasta problema => am trecut pe Visual Studio.
Sunt pe vista (x64), dar si la xp pe 32 de biti am patit asa.
Din cate imi amintesc Dev-ul face probleme uneori cand nu ai sursa bagata intr-un proiect, alteori din principiu, are vointa proprie debugger-ul lui Visual Studio are un debugger puternic, dar ai grija ca sunt cateva diferente intre el si GCC. Compilatorul Microsoft e dezvoltat sa fie backwards-compatible si te lasa sa faci unele chestii care dau erori de compilare pe GCC.
|
|
|
Memorat
|
|
|
|
•Mishu91
|
|
« Răspunde #22 : Aprilie 22, 2009, 20:26:13 » |
|
Versiunea compilatorului este mai veche, sau de ce pt linia de cod for(typeof (V).begin() it = (V).begin(); it != (V).end(); ++it) da foarte multe erori? Cand am schimbat typeof (V).begin() in vector <int> :: iterator a mers, dar pe Rhide, Dev, si pe evalu de pe infoarena merge si faza cu typeof
|
|
|
Memorat
|
|
|
|
•wefgef
|
|
« Răspunde #23 : Aprilie 22, 2009, 21:21:50 » |
|
Din cate stiu eu nu e standard faza cu typeof.
|
|
|
Memorat
|
omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
|
|
|
•svalentin
|
|
« Răspunde #24 : Aprilie 22, 2009, 21:29:19 » |
|
incearca __typeof
|
|
|
Memorat
|
|
|
|
|