Problem z funkcja write i zapisem do pliku

0

Mam takie pytanie dlaczego jak mam:

	int fi;
	char tab[10];

	tab[0] = 'a';
	tab[1] = 'b';
	tab[2] = 13;
	tab[3] = 10;
	tab[4] = 'd';
	tab[5] = 'e';

	if((fo = open("plik_out.txt", O_WRONLY | O_CREAT | O_TRUNC, S_IREAD | S_IWRITE)) >= 0)
	{
		write(fo, tab, 6);
	}

	close(fo);

Wg mnie powinno zapisac 6 bajtow do pliku a spojrzeniu we wlasciwosci widac ze plik ma 7 bajtow. Otworzylem plik edytorem szesnastkowym i widac ze w pliku jest o jeden bajt za duzo i sa dwie 13. Moglby ktos pomoc aby bylo ok? Myslalem nad funkcja ktora by wyciela z tablicy wszystkie 13 ale to nie jest najlepszy pomysl :/ Mam za zadanie napisac program do dzielenia i laczenia plikow i jeden bajt w ta czy w ta to katastrofa dla programu ;)

Moze dodam ze jestem niemalze sila zmuszany do korzystania z visual studio :/ Wiec takze o zgrozo do windowsa wiec dobrze jak by ktos pomagal bral to pod uwage :)

0

bo otwierasz plik w trybie tekstowym i w trakcie translacji znaku końca linii dostajesz:
13 -> 13
10 -> 13,10

1 użytkowników online, w tym zalogowanych: 0, gości: 1