Eclipse, C, Linux - kiedy stosujemy CR?

W tym miejscu zadajemy pytania na temat języka C, dzielimy się swoją wiedzą, udzielamy wsparcia, rozwiązujemy problemy programistyczne.
Awatar użytkownika
Antystatyczny
Geek
Geek
Posty: 1168
Rejestracja: czwartek 03 wrz 2015, 22:02

Eclipse, C, Linux - kiedy stosujemy CR?

Postautor: Antystatyczny » piątek 04 mar 2016, 23:49

Witam serdecznie,

Chciałem przed chwilą napisać programik do wyznaczania współrzędnych i na początek napisałem możliwie najkrótszy programik, by cokolwiek skompilować i wyświetlić w konsoli wbudowanej w eclipse. Oto programik:

Kod: Zaznacz cały

/*
 ============================================================================
 Name        : circle_coords.c
 Author      : Anty
 ============================================================================
 */

#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>

int main(void)
{
   for(uint8_t i = 0; i < 10; i++)
   {
      puts("Testowy napis. Dlaczego nie trzeba używać CR i LF???");
   }
   return EXIT_SUCCESS;
}


A to zrzut z konsoli:

Testowy napis. Dlaczego nie trzeba używać CR i LF???
Testowy napis. Dlaczego nie trzeba używać CR i LF???
Testowy napis. Dlaczego nie trzeba używać CR i LF???
Testowy napis. Dlaczego nie trzeba używać CR i LF???
Testowy napis. Dlaczego nie trzeba używać CR i LF???
Testowy napis. Dlaczego nie trzeba używać CR i LF???
Testowy napis. Dlaczego nie trzeba używać CR i LF???
Testowy napis. Dlaczego nie trzeba używać CR i LF???
Testowy napis. Dlaczego nie trzeba używać CR i LF???
Testowy napis. Dlaczego nie trzeba używać CR i LF???

Jak widać nie użyłem \n ani \r\n, a mimo to karetka za każdym razem ustawiała się na początku kolejnego wiersza. Taka jest specyfika funkcji puts, czy to znowu jakiś inny haczyk, o którym nie wiem?
"The true sign of intelligence is not knowledge but imagination" Albert Einstein.

Awatar użytkownika
mokrowski
User
User
Posty: 190
Rejestracja: czwartek 08 paź 2015, 20:50
Lokalizacja: Tam gdzie Centymetro

Re: Eclipse, C, Linux - kiedy stosujemy CR?

Postautor: mokrowski » sobota 05 mar 2016, 00:18

W konsoli wpisujesz:

Kod: Zaznacz cały

man puts

... i masz manual. Czytasz go następnie i widzisz linię...

Kod: Zaznacz cały

puts() writes the string s and a trailing newline to stdout.

Z kolei fputs()...

Kod: Zaznacz cały

   fputc() writes the character c, cast to an unsigned char, to stream.

       fputs()  writes  the  string  s to stream, without its terminating null
       byte ('\0')


Jak widać nic tajnego ani zaskakującego :-)
,,Myślenie nie jest łatwe, ale można się do niego przyzwyczaić" - Alan Alexander Milne: Kubuś Puchatek

Awatar użytkownika
Antystatyczny
Geek
Geek
Posty: 1168
Rejestracja: czwartek 03 wrz 2015, 22:02

Re: Eclipse, C, Linux - kiedy stosujemy CR?

Postautor: Antystatyczny » sobota 05 mar 2016, 00:52

Dzięki za odpowiedź, muszę sobie wbić do łba, że mam na wyposażeniu man.
"The true sign of intelligence is not knowledge but imagination" Albert Einstein.


Wróć do „Pisanie programów w C”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 5 gości