Ah ok grazie

Così pare che funziona!!!

codice:
#include <unistd.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <fcntl.h>

#define SIZE 15

typedef struct ElencoTelefonico{
	char name[SIZE];
	char surname[SIZE];
	char numeroTelefono[SIZE];
}ElencoTelefonico;

void verificaInput(ElencoTelefonico record);

int main(int argc, char**argv) {
	
	ElencoTelefonico record;
	
	verificaInput(record);
	
	printf("Nome: %s",record.name);
	printf("Cognome: %s",record.surname);
	printf("Numero: %s", record.numeroTelefono);
	
	return 1;
}

void verificaInput(ElencoTelefonico record) {
	
	char name_temp[SIZE+1];
	char surname_temp[SIZE+1];
	char numero_temp[SIZE+1];
	
	do {
		printf("\nInserisci il nome: ");
		scanf("%s", name_temp);
		printf("\nInserisci il cognome: ");
		scanf("%s",surname_temp);
		printf("\nInserisci il numero di telefono: ");
		scanf("%s",numero_temp);
		
		if(strlen(name_temp) > SIZE) {
			printf("\nNome troppo lungo!\n");
		}
		if(strlen(surname_temp) > SIZE) {
			printf("\nCognome troppo lungo!\n");
		}
		if(strlen(numero_temp) > SIZE) {
			printf("\nNumero troppo lungo!\n");
		}
	}while((strlen(name_temp) > SIZE) || (strlen(surname_temp) > SIZE) || (strlen(numero_temp) > SIZE));
	
	strcpy(record.name,name_temp);
	strcpy(record.surname,surname_temp);
	strcpy(record.numeroTelefono,numero_temp);
	
	return;
}
Può sempre essere utile a qualcun'altro

Edit:Le printf stampano una roba strana O.o