Salut<br><br>Raspunsul de aseara a fost foarte util, multumesc din nou.<br><br>Mai am nevoie de ajutor pentru o problema destul de bizara: am vazut ca tema pica testele 4 si 5 din cauza acoladei deschise de la echo ' int main { ....'
<br>Mai precis { nu apare in output. Si programul nu compileaza si deci testul pica cu glorie. <br><br>Am facut tot felul de incercari de comenzi simple in shellul din tema mea:<br><br>echo 'a{b' imi scrie doar a<br>echo 'aaa { bbb' imi scrie aaa bbb (cu 2 spatii deci practic elimina acolada)
<br>echo '{' nu scrie nimic<br>echo '{}' scrie culmea {} ... e singurul mod in care am reusit sa fac sa apara o acolada deschisa<br>echo 'aa{}bb' scrie aabb fara nici o acolada si fara spatiu<br>echo 'aa{ }bb' (cu spatiu intre acolade) scrie aa }bb
<br><br>Evident ca totusi in marea majoritate a cazurilor shellul merge ca altfel problema nu era bizara, adica echo 'ana are mere' afiseaza ana are mere. Problema e cu acolada deschisa.<br><br>Singurul lucru la care pot sa ma gandesc e ca problema vine de la dualitatea Unicode / Ascii de pe Windows sau de la faptul ca din cine stie ce motive CreateProcessA trateaza special caracterul { din pathul pe care il primeste. Fiindca portez tema de pe Linux am ales sa folosesc ASCII si deci apelez CreateProcessA careia ii trimit un char[] pe post de parametru 2 lpCommandLine (care e LPCSTR adica tot aia). Daca afisez inainte parametrul pe care urmeaza sa-l trimit lui CreateProcessA , pentru echo 'aa{bb' el este echo aa{bb (presupun ca de eliminarea ' se ocupa parserul) deci ok si totusi rezultatul comenzii e ca imi scrie doar aa.
<br><br>Ce as putea sa fac? <br><br>Multumesc<br><br><br><br>