[so] [Tema 1] Problema diff

Victor Ciurel victor.ciurel at gmail.com
Mon Mar 16 22:37:39 EET 2015


Hello!

Am intampinat o problema in rezolvarea temei si in urma a cateva ore de 
debugging, am depistat ca unele teste imi picau din cauza formatului 
output-ului. Initial, am crezut ca daca un bucket al hashtable-ulului 
este gol, voi afisa o linie goala si atat. Din cauza acestui format 
unele teste ajungeau sa genereze un output, care comparat cu fisierul de 
referinta (cu diff -BEbwu, asa cum am observat ca este rulat si in 
checker), rezulta ca fiind diferit. Am verificat cu valgrind sa vad daca 
corup memoria, si nu am erori si nici leak-uri. Am luat un test care 
pica, si am sters orice nu producea eroarea si am ajuns sa compar 2 
fisiere de cateva linii. Le-am comparat chiar si cu od si niciunul nu 
avea caractere diferite cu exceptia numarului diferit de \n. Formatul 
care da eroare este urmatorul:

"True\nFalse\n\n" vs "True\n\nFalse\n"

Output-ul diff pentru doua fisiere ce contin textele de mai sus este:

@@ -1,3 +1,3 @@
  True
-False

+False

Intre timp am modificat sa nu afisez bucket-urile goale din hashtable 
cand primesc print, si astfel iau maxim. As vrea totusi sa stiu daca 
intentia este sa nu afisam bucket-urile goale. De asemenea, imi poate 
explica cineva comportamentul diff de mai sus, pentru ca eu inteleg ca 
rulat cu -B, se vor ignora randurile libere.

O seara buna!

Victor


More information about the so mailing list