Ora è compilabile però non funziona benissimo in quanto dopo la tabulazione la parola che ho scritto non viene visualizzata
#include <stdio.h>
#include <string.h>
void read_string(char s[], unsigned int dim);
void escape(char s[], char t[]);//copia la stringa t in s
//int strlen_fatta_in_casa(char str[]);
void main()
{
char t[10], s[30];
read_string(t, 10);
escape(s, t);
printf("%s", s);
}
void read_string(char s[], unsigned int dim)
{
int c;
unsigned int i;
for(i = 0; i < dim - 1 && (c = getchar()) != EOF; ++i)
{
s[i] = c;
}
s[i] = '\0';
}
void escape(char s[], char t[])
{
int i, j, c;
for (i = 0, j = 0; i < strlen(t) - 1, j < strlen(t) - 1; i++)
{
switch (t[i]) {
case '\t':
s[j++] = '\\';
s[j++] = 't';
case '\n':
s[j++] = '\\';
s[j++] = 'n';
default:
s[j++] = t[i];
}
}
s[j] = '\0';
}
/*int strlen_fatta_in_casa(char str[])
{
int i;
for (i = 0; str[i] != '\0'; ++i)
;
return i;
}*/