zamiana c++ na c

0

Czy ktos moglby mi pomoc w zamianie tego kodu na c?

plik >> k >> n;
plik >> tab[i];
cout <<tab[i] << " ";
0

Jakiej pomocy oczekujesz konkretnie?

0

Nie znam kompletnie języka C++, a musze to przerobic na C. Nie wiem jak pozamieniac te komendy

0

No to weź podstawowy kurs C++ do ręki i go użyj, tu nie ma nic trudnego.

0

Próbowałem juz zamieniac, ale dla osoby nawet slabo znajacej jezyk C, a praktycznie wcale C++ jest to cięzkie zadanie

0

Czy umiesz przynajmniej obsługiwać we/wy plików w C?

0

Nie wiem jakiej zamiany dokonac, np dla tych linijek:

 plik >> k >> n;
plik >> tab[i];
cout <<tab[i] << " ";
0

Dodam, że nie jestem studentem informatyki ani żadnego kierunku związanego z informatyką, ale takie zadanie zostało mi powierzone więc daltego potrzebuje pomocy w zamianie

0
kmph napisał(a):

Czy umiesz przynajmniej obsługiwać we/wy plików w C?

Nigdy wcześniej nie musiałem tego robić, więc doswiadczenia w obslugiwaniu plikow nie mam

1

Jak oczekujesz usługi translacji kodu na inny język, to może powinienem przenieść do https://4programmers.net/Forum/Og%C5%82oszenia_drobne ?

0

Nie chodzi mi o przepisanie całego kodu, tylko kilka wskazówek że np w danej linijce użyc printf lub tego typu rzeczy. Żeby nie było niejasnosci , proszę teraz o zamianę tylko tych 3 linijek , z resztą bedę starać sie sam
plik >> k >> n;
plik >> tab[i];
cout <<tab[i] << " ";

1

Niech stracę.

ifstream plik;
 
plik.open( "ini.txt", std::ios::in | std::ios::out );

Otwiera plik w trybie odczytu i zapisu (i, nie jestem 100% pewien, ale chyba robi to nieprawidłowo). Odpowiednik: fopen

ofstream plik( "out.txt" ); - otwiera plik chyba tylko do zapisu. Także odpowiednik fopen

plik.close(); - fclose(); - w C przydałoby się do tego jeszcze sprawdzać czy nie zwróciło kodu błędu

plik >> zmienna1 >> zmienna2 - zapisuje dane z pliku do zmiennych. Odpowiednik: fscanf

cin >> zmienna1 >> zmienna2 - zapisuje dane ze standardowego wejścia. Odpowiednik: scanf

plik << zmienna1 << zmienna2 - zapisuje dane do pliku. fprintf

cout << zmienna1 << zmienna2 - do standardowego wyjścia. printf

cout << endl - robi to samo co printf('\n') ORAZ czyści bufor.

plik.good() - czy dotąd nie było błędów w operacjach we/wy na plik takich jak niepoprawnie sformatowane dane lub koniec pliku

0

Dziękuję bardzo za pomoc! Te wskazówki wiele ułatwią

0

Jak skończysz, pokaż kod, w C naprawdę łatwo się rypnąć szczególnie jak się go dobrze nie zna.

0

void open()
{

FILE *plik;

fopen( "ini.txt","r" );
if( plik.good())
{
fscanf(plik,"%d","%d",&k,&n);
tab =new int[n];
for (int i=0; i<n; i++)
{
fscanf(plik,"%d",&tab[i]);
}
printf('\n') ;
fclose();
}
}

Czy plik otwarcia ma tak dokładnie wyglądać w C ?

2

Nie możesz jakiegoś tutoriala na webie przeczytać? To nie jest problem nieznajomości C++, to jest problem fundamentalnej nieznajomości C!

FILE *plik;

fopen( "ini.txt","r" );

Pytanie o podstawy: jaką wartość ma wskaźnik *plik po wykonaniu tych dwóch linijek i dlaczego jakiekolwiek późniejsze operacje na plik są nieprawidłowe?

if( plik.good()) - czy C w ogóle obsługuje taką składnię??

fscanf(plik,"%d","%d",&k,&n); - jeśli nie wiesz, jak się używa scanfa w C, to co chcesz osiągnąć?

tab =new int[n]; - to znowu C++ a nie C. W C masz malloc/calloc/realloc/free. I uwaga, bo popełnić poważny błąd tu naprawdę łątwo.

fclose(); - no ale CO zamykasz?

Ogólnie radzę albo zlecić komuś to zadanie albo zacząć uczyć się C od podstaw, od prostszych zadań. Jeśli wybierzesz tę drugą drogę, będziemy w stanie Ci na forum pomóc, z prostszymi zadaniami, bo wtedy będzie mniej do wytłumaczenia na post. Bo obecnie nie wiem, co mam odpowiedzieć. Mam w zasadzie 2 wyjścia: albo zacząć Ci przepisywać podręcznik uczący C od podstaw, na co nie mam czasu, albo po prostu zrobić tę pracę za Ciebie.

1

@Oqqo programowanie to nie a sprobuje sobie dopisac cos tutaj i troszke poprzekrecam tutaj i moze zadziala
Widac u Ciebie calkowity brak wiedzy. Jezeli oczekujesz gotowca zaplac, jezeli nie. Prosze poczytaj choc troche o podstawach zamiast zgadywac (wygoogluj sobie operacje na plikach C)

1

Wydaje mi się, że to czego szukasz znajdziesz tutaj:
https://pl.wikibooks.org/wiki/C/Czytanie_i_pisanie_do_plików

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