giełda, akcje, inwestycje
 ° Forum ° Odpowiedz ° Rejestracja ° Szukaj °
10 rubli - numizmatyka ][ Remonty Warszawa ][ piankowe materace

Nie widzi pliku..

Forum: / Giełda, inwestycje - archiwum 2007 / Nie widzi pliku..
Autor Wiadomość
Malloc

Posted: 4 Kwi 2007 11:59:27



#include<stdio.h
#include<conio.h
int main()
{
FILE *fp;
fp = fopen ("test.txt","r");
if (fp==NULL) perror ("blad");
getc(fp);
getch();
fclose(fp);
return 0;
}

Funkcja nie widzi pliku mimo iż ten znajduje się w tym samym katalogu co
program.
Poza tym zauwazyłem że nie można jako parametr podać scieżki do pliku(tylko
nazwę pliku) , co zrobić abym miał mozliwość podania ścieżki?





Łukasz Kalbarczyk

Posted: 4 Kwi 2007 12:26:19




#include<stdio.h
#include<conio.h
int main()
{
FILE *fp;
fp = fopen ("test.txt","r");
if (fp==NULL) perror ("blad");
getc(fp);
getch();
fclose(fp);
return 0;
}

Funkcja nie widzi pliku mimo iż ten znajduje się w tym samym katalogu co
program.

a errno na co ustawia?

Poza tym zauwazyłem że nie można jako parametr podać scieżki do pliku(tylko
nazwę pliku) , co zrobić abym miał mozliwość podania ścieżki?

Cudzysłowu trzeba użyć, albo innego takiego.




skippy

Posted: 4 Kwi 2007 12:30:39



Poza tym zauwazyłem że nie można jako parametr podać scieżki do
pliku(tylko
nazwę pliku) , co zrobić abym miał mozliwość podania ścieżki?

posklejaj sobie strcpy i strcat

NTG






*ZBIG*

Posted: 4 Kwi 2007 13:06:30




if (fp==NULL) perror ("blad");

Przede wszystkim pisze się if (!fp).




skippy

Posted: 4 Kwi 2007 13:08:23





if (fp==NULL) perror ("blad");

Przede wszystkim pisze się if (!fp).

tak i tak jest ok






*ZBIG*

Posted: 5 Kwi 2007 12:07:18




tak i tak jest ok

Tak jak napisałem jest lepiej, bo zajmuje mniej pamięci i szybciej się
wykonuje. Wiem że dziś już nikt nie zwraca uwagi na takie drobnostki, ale
ja się uczyłem programować na 8-bitowym komputerze z 64KB RAM i dla mnie to
jak dla innych błąd ortograficzny. Po prostu zęby mnie bolą jak widzę coś
takiego. :)




skippy

Posted: 5 Kwi 2007 12:18:13





tak i tak jest ok

Tak jak napisałem jest lepiej, bo zajmuje mniej pamięci i szybciej się
wykonuje

Przykro mi ale to bzdura.
Kod wynikowy nie będzie inny jeżeli kompilator rozróżnia porównywanie do
zera i do innej wartości, a nie wyobrażam sobie żeby nie robił tego MS czy
Borland.

Co do pamięci = tak mniejszy będzie plik *.c i nic poza tym.

!= NULL jest bardziej czytelne dla początkujacych.

W sumie masz rację ale zbyt restrykcyjnie do tego podchodzisz i nie
chciałbym w zyciu Ci przekazywać źródeł do wykorzystania.
:)))


Pozdrawiam






*ZBIG*

Posted: 6 Kwi 2007 10:41:37




Kod wynikowy nie będzie inny jeżeli kompilator rozróżnia porównywanie do
zera i do innej wartości, a nie wyobrażam sobie żeby nie robił tego MS czy
Borland.

Szczerze mówiąc ostatnio sprawdzałem takie rzeczy na kompilatorze Borlanda
v 3.1, ale nie liczył bym bo nie jest roją kompilatora, zastanawianie się
nad tym co autor miał na myśli, zwłaszcza w języku C który z założenia jest
tłumaczony na kod maszynowy 1 do 1. Inna sprawa to optymalizacja,

!= NULL jest bardziej czytelne dla początkujacych.

Nowsze języki programowania definiują już pojęcie "null" w swoich
założeniach i w nich tego typu zapis jest po prostu niepoprawny ponieważ
null nie oznacza wartości 0, lecz brak, a jeśli czegoś niema to nie można
tego czegoś z niczym porównywać.
Nawet operator logiczny "NOT" nie jest do końca prawidłowy, bo trzeba by tu
zastosować całkiem inny operator "BRAK", ale w C niema takiego operatora,
więc w tym przypadku trzeba rozumieć że operator "!", jest przeciążony.





skippy

Posted: 6 Kwi 2007 10:51:43



Nie Zbig.

Nie piszę komentarzy, są nimi nazwy funkcji i zmiennych.
Dla pointera zawsze użyję x!=NULL.
Oznacza to dokładnie to samo co x!=0 oraz !x, ale spełnia swoją opisową
rolę.

Nie masz racji, EOT






Twoja wypowiedź

Bold Style  Italic Style  Underlined Style  Image Link  Insert URL  Email Link  Wyłącz BB code


Zanim wyślesz jakąś wiadomość z polskimi znakami, upewnij się czy kodowanie znaków w twojej przeglądarce to ISO-8859-2
 » Login  » Hasło 
 

Notowania, informacje, papiery wartościowe, akcje, obligacje - wymiana doświadczeń dotyczących inwestowania na giełdzie i nie tylko.
Gra na giełdzie nie jest łatwa tutaj jednak znajdziesz na pewno wiele rad jak pomnożyć swoje aktywa oraz wiele informacji o Giełdzie Papierów Wartościowych w Warszawie - instytucji publicznej mającej na celu zapewnienie możliwości obrotu papierami wartościowymi, dopuszczonymi do obrotu giełdowego.
Dyskusja została podzielona na lata by łatwiej można było odszukać potrzebne informacje.
Życze wszystkim zakupów w dołku i sprzedaży na szczycie!

Czas ładowania strony (sek.): 0.388
miniBB.net © 2001-2010 Polityka Prywatności
° ogłoszenia ° kawaleria ° valati ° ogłoszenia archiwum ° r-gg °

Online: Odwiedzający - 1
+ - 0
Najwięcej odwiedzających: 22 [10 Mar 2010 22:43:07]
Odwiedzający - 22 / + - 0
Staki kreatynowe bandamka policealna gdańsk alegro sprzęt medyczny