Strona 1 z 1
[C] przenoszenie źródła
: 9 lis 2008, o 21:00
autor: redemptorek
Mam problem z plikami z kodem źródłowym tworzonymi pod Windowsem jako txt a przenoszonymi pod UNIXa. W edytowanych już pod UNIXem plikach każdą linię kończy znak: ^M, który - jeśli nie zostanie usunięty - powoduje błąd kompilacji. Wiem, że pewna sekwencja komend wydana powoce powinna rozwiązać problem, niestety, mimo że googlam zawzięcie, takowej nie znajduję.
A moze istnieje inna prosta i skuteczna metoda z tego wybrniecia
[C] przenoszenie źródła
: 9 lis 2008, o 22:02
autor: smiechowiec
Pod dosem (windows, mac) na kónu każdej linii kryją się 2 znaki o kodach 13 (CR) i 10 (LF).
W unix jest tylko znak o kodzie 10.
Rozwiązań jest kilka
Przy kopiowaniu pliku programem ftp ustawiamy tryb kopiowania nie binarny, a tekstowy.
Wtedy pliki będą miały poprawne znaki w obu systemach.
Ewentualnie polecenie dos2unix usunie zbędne znaki 13.
Edytory pod windows czasem mają ustawienia, w których podaje się jak ma się kończyć linia, więc wystarczy to odpowiednio ustawić.
[C] przenoszenie źródła
: 9 lis 2008, o 22:10
autor: soku11
To wszystko zalezy w czym piszesz

Piszac w np. CodeBlocks masz w opcjach edytora cos takiego jak End-Of-Line Mode, gdzie mozesz wybrac 'CR LF', 'CR' lub 'LF'. Coprawda ja nigdy nie mialem z tym problemu i nigdy tego nie zmienialem, no ale moze sie przydac jak widac

Pozdrawiam.
[C] przenoszenie źródła
: 9 lis 2008, o 23:42
autor: redemptorek
póki co udało mi się rozwiązać to poleceniem:
gdzie
plika jest
*.txt lub
*.c kompatybilnym z Windosowym końcem wiersza, zaś
plikb - z UNIXowym
...a gdyby ktoś chciał w drugą stronę, zadziałać powinno:
(zgodnie z ozn. wyżej)
ale że to wyżej straszy składnią, metody bardziej przyjaznej poszukam wśród Waszych rad (dzieki!)
