Io credo che nello specifico il "Segmentation Fault" sia dato dal semplice fatto che lui si aspetta una stringa null-terminated. Ricevendo invece un intero, non trova il carattere null e va avanti fino al segmentation fault.