[so] [Tema 1] Problema diff

Victor Ciurel victor.ciurel at gmail.com
Tue Mar 17 00:49:32 EET 2015


On 03/17/2015 12:34 AM, Razvan Crainea wrote:
> On Mon, Mar 16, 2015 at 10:37 PM Victor Ciurel via so 
> <so at cursuri.cs.pub.ro <mailto:so at cursuri.cs.pub.ro>> wrote:
>
>     De asemenea, imi poate
>     explica cineva comportamentul diff de mai sus, pentru ca eu inteleg ca
>     rulat cu -B, se vor ignora randurile libere.
>
>
> Dacă folosești opțiunea -B, când diff găsește o linie goală într-un 
> fișier, verifică dacă în celălalt fișier este _cel puțin_ o linie goală.
> Concret, în cazul tău, diff găsește o linie goală între True și False 
> în cel de-al doilea fișier, în schimb în primul fișier nu era niciuna. 
> Deci testul returnează fals. Dacă erau două sau mai multe linii goale 
> între True și False, diff returna succes.

Am un contraexemplu pentru argumentul acesta:

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

Comparand cu diff, aceste apar ca fiind identice, desi exista o linie 
libera intre True si False in primul caz, dar nu si in al doilea.

As vrea sa mai inteleg cum anume au fost generat fisierul de referinta 
pentru urmatoarele bucati de input (test20.in):

find brady
find into _test/outputs/test20.out.1
find jamie

Ce au ca output la stdout (test20.ref):

"True\n\nFalse\n"

Nu inteleg din ce motiv ar aparea o linie libera intre True si False. 
Pentru fiecare comanda ce afiseaza in fisier, ar trebui sa apara o linie 
libera si la stdout? Sau dupa fiecare comanda rulata vom afisa o linie 
goala?

Victor
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20150317/1b8c526a/attachment-0001.html>


More information about the so mailing list