Osjećam se prljavo, jer već otprije znam za trik, no ne mogu izdržati! :D
while(*d++=*p++);
*d++ će uvećati varijablu d za jedan, i vratiti sadržaj adrese koja se (prije ovog inkrementa) nalazila u varijabli d
*p++ će napraviti upravo jednaku stvar, no sa varijablom p
Uvjet izvršavanja while-a je pozitivnost broja unutar zagrade - ili broja koji se dobiva svođenjem ne-brojevne vrijednosti na broj.
Operator = vraća vrijednost koja je pridruživana; rezultat izraza (*p++).
Drugim rječima, petlja se prekida upravo onda kad taj izraz bude <= 0.
S obzirom da se ovo koristi za znakovno polje, a znakovna polja završavaju vrijednošću 0, petlja će se prekinuti upravo kad se prođe kroz svaki element p-a.
Samo pridruživanje će kopirati, slovo-po-slovo, vrijednosti iz p-a u d!