Ehm, scusa
codice:
#include <stdio.h>
#include <string.h>
#define BUFF_LEN 80
void pulisci_buffer() {
while(getchar() != '\n');
}
void inserimento(char *out, unsigned max_len) {
char buff[BUFF_LEN];
while(1) {
fgets(buff, BUFF_LEN, stdin);
if((buff[strlen(buff)-1] == '\n') && (strlen(buff) <= (max_len)))
break;
if(buff[strlen(buff)-1] != '\n')
pulisci_buffer();
printf("Lunghezza massima consentita %u, reinserire: ", (max_len-1));
}
buff[strlen(buff)-1] = '\0';
strcpy(out, buff);
}
int main(int argc, char ** argv) {
char nome[20];
inserimento(nome, 20);
printf("%s\n", nome);
return 0;
}