Если место назначения не достаточно велико, strncpy не будет завершено. если пункт назначения огромен по сравнению с источником, strncpy просто заполняет пункт назначения нулями после строки. strncpy бессмысленна и непригодна для копирования строк.
strncpy как memcpy за исключением он заполняет пункт назначения нулями, когда видит один в источнике. Это абсолютно бесполезно для струнных операций. Он фиксируется с 0 заполненными записями.