Én találjam ki hogy mit akarsz? 
''ezzel probaltam meg kiiratni de semmi. ''
Kiiratni vissza a képernyőre, vagy kiírni a fájlba, vagy mit akartál? Mi az hogy de semmi?
fprintf -nek megadtad a fpontok FILE streamet, így a formátumnak megfelelő adatokat kiírja a fájlba, feltéve ha leveszed a &-t, ahogy mondtam.. Hogy utána mit csinálsz az megint más kérdés. De minek olvastatod vissza a programmal, miért nem nézed meg egyszerűen, hogy mi lett a fájlban?
Nehéz kiigazodni rajtad. 
Gyorskeresés
Legfrissebb anyagok
További témák
Szoftverfejlesztés
Lapcsalád ajánló
PROHARDVER! témák
Mobilarena témák
Hirdetés
Hozzászólások

Lortech
(PH! addikt)

KMan
(senior tag)
eloszor kirni a fajlba, utana ki a kepernyore.
priviben elkuldtem a kesz kodot 
Csak a balekok alszanak „Mindennek, aminek nekifogunk, célja a VÁLTS_ – és mindent, amin VÁLToztatunk_, jobbá és a Nissanra jellemzőbbé teszünk” – Carlos Ghosn [SAS]

-Zeratul-
(őstag)
c++-ban nem is, de aki kérdezte, c-ben írta programját nem? 
jajó nem, KMan írt c-ben 
[Szerkesztve]
Oracle Database Consultant

amargo
(PH! addikt)
Ez a függvény hogy? Nincs paraméternek átadva a FILE, nincs lezárva.. & nem kell, nem a címét akarod kirakni.
void kirak(FILE *stream)
(...)
main()
{
FILE* stream;
(...)
kirak(stream);
fclose(stream);
}
“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!” const int GetAnswerToLifeTheUniverseAndEverything() const{ return 42; }

KMan
(senior tag)
mar megoldottam, egy-ket-szaz helyen ellamultam, de mostmar ok.
koszi
Csak a balekok alszanak „Mindennek, aminek nekifogunk, célja a VÁLTS_ – és mindent, amin VÁLToztatunk_, jobbá és a Nissanra jellemzőbbé teszünk” – Carlos Ghosn [SAS]

manrick
(kvázi-tag)
Sziasztok.
Gyakorolok a pénteki vizsgára, és a következő kis programot írtam:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAXSZAM 3
struct book {
char nev[20];
char cim[40];
int ev;
float ar;
};
main() {
struct book tar[MAXSZAM];
int i=0,j;
clrscr();
while (i!=2)
{
printf (''\nKérem a könyv szerzőjét: ''); gets (tar.nev);
printf (''\nKérem a könyv címét: ''); gets (tar.cim);
printf (''\nKérem a kiadás évét: ''); scanf (''%d'', &tar.ev);
printf (''\nKérem a könyv árát: ''); scanf (''%f'', &tar.ar);
i++;
}
printf(''\nA tárolt adatok:\n'');
for (j=0; j<MAXSZAM; j++)
{
printf(''\n\nA %d könyv adatai:\n'', j+1);
printf(''Az író: %s\n'', tar[j].nev);
printf(''Címe: %s\n'', tar[j].cim);
printf(''Kiadás éve: %4d\n'', tar[j].ev);
printf(''Ár: %5.2f'', tar[j].ar);
}
getch();
}
A program fut is, feltöltéskor 1. alkalommal szépen kéri az adatokat, de 2. alkalommal már nem kéri a szerzőt, hanem egyből ugrik a címre. Miért?
tudna valaki segíteni?
Köszi szépen
Manrick
Az éremnek két oldala van. Nézz a háta mögé is!

Lortech
(PH! addikt)
A szokásos.
Benneragadt az stdinben egy whitespace (a scanf (''%f'', &tar.ar);)-nek a \n-je), és [ i ] -ket használsz, csak szóköz nélkül, így kiveszi a fórummotor, és már megint csak lestem pár másodpercig. Windózeren működik az, hogy fflush(stdin);-t beraksz a ciklusba az első beolvasás elé. Egyébként ez nem szabványos, az fflush működése az stdin-re nem meghatározott.
Ja meg a kiíratást túlindexeled, 1-gyel több rekordot iratnál ki, mint amit bekértél.
[Szerkesztve]

manrick
(kvázi-tag)
Köszi, közben megoldottam, bár nem teljesen úgy ahogy leírtad.
egyszerűen a gets ( tar [ i ] .nev) helyett a scanf (''%s'', &tar [ i ] .nev)-et használom, így működik teljesen jól.
Igen tudok a plusz indexről az véletlenül maradt ott.
Köszi szépen
[Szerkesztve]
Az éremnek két oldala van. Nézz a háta mögé is!

manrick
(kvázi-tag)
Még egy kérdésem lenne.
Hogyan tudom megcsinálni azt, hogy a fájl sorait egy többdimenziós tömbbe teszem?
Az éremnek két oldala van. Nézz a háta mögé is!

Jester01
(PH! addikt)
így működik teljesen jól
Biztos? A %s szerintem nem eszik ám meg több szóból álló stringet.
Jester

amargo
(PH! addikt)
struct matrix
{
int** pData;
int o;
int s;
};
bool GetMatrix(matrix &pMatrix)
{
pMatrix.pData = new int*[ pMatrix.o ];
if(!pMatrix.pData)
return false;
for(int i = 0; i < pMatrix.o; i++)
{
pMatrix.pData[ i ] = new int[ pMatrix.s ];
if(!pMatrix.pData[ i ])
return false;
}
return true;
}//bool GetMatrix(matrix &pMatrix)
Esetleg valami ilyesmire gondoltál csak string.el?
szerk: kimaradt..
main()
{
bool tBool = GetMatrix( pMatrix );
if(!tBool)
{
cout << ''Hiba a matrix letrehozesanal!'' << endl;
return false;
}
ifstream x(filenm.c_str());
if (x.fail()){
cout << ''A megadott fajlt nem talalom!'';
return false;
}
//Beolvassuk/kiírjuk a tömb hosszát
x >> pMatrix.o;
x >> pMatrix.s;
for(int i = 0; i < pMatrix.o; i++)
for(int j = 0; j < pMatrix.s; j++)
x >> pMatrix.pData[ i ][ j ];
}
...
Csak ez szóközzel elválaszotott szanvanként olvassa fel.. tehát amúgy le kell kezelned.
[Szerkesztve]
“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!” const int GetAnswerToLifeTheUniverseAndEverything() const{ return 42; }

amargo
(PH! addikt)
ööö, miért ne enne meg?
char sok[ 21 ];
sprintf(sok, ''%s'', ''elsoszo masodik hany'');
vagy csak valamit nem értek?
“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!” const int GetAnswerToLifeTheUniverseAndEverything() const{ return 42; }
helló
újabb problémába ütköztem
szokásosan nem tudom h hol a hiba...
ez a feladat:
Írd meg az alábbi függvényeket a String osztályban:
strlen(const String& s);
strchr(const String& s, char c);
strcmp(const String& s1, const String& s2);
strstr(const String& s1, const String& s2);
A függvények legyenek statikusak! A működésük egyezzen meg az azonos nevű C könyvtári függvényekével!
itt van fent a kód:[link]
előre is thx

Jester01
(PH! addikt)
scanf-ről van szó nem pedig printf-ről. Az pedig megáll az első whitespace karakternél SZVSZ.
Jester

nukeleo
(újonc)
Sziasztok!
Sürgős segiítség kellene C++-ban:
az a feladatom , hogy egy beolvasott fileban (szöveges) nézzem meg hány sor van, és tudjak beszurni / törölni sorokat a megadott sorba !
Valamint a fájlban tudjak keresni egy megadott szot, és kiirja hogy hanyadik sorban van a keresett szo!
Azt az utasítast kaptam hogy operator[] (indexelő operatort ) használjak!
Aztán még , két txt fájlt tartalmát kiirni egy harmadik fájlba!
ugy hogy használjak egy buffert is!
nagyon köszönöm a válaszokat

Jester01
(PH! addikt)
* Az strcmp az nem boolean visszatérési értékű kellene legyen. Ha a compare viszont igen, akkor az nyugodtan hívhatja az strcmp-t.
* Az strcmp-ben a if (i==s1.elementsNum-1) feltétel elég borzasztó, elég lenne a ciklus után visszaadni igaz értéket
* rendszeresen nem szabadítod fel az előző tartalmat
* hiányzik a lezáró 0 byte a concatenate fvben
* if(not) return false; else return true; ilyet ne csinálj már 
* strchr nem mindig ad vissza értéket, de ha igen, akkor biztos, hogy kell a +1 ?
* az strstr gyakorlatilag halvaszületett
Első ránézésre ennyi.
Jester
őőő elmondanád h melyik mit csinál?
mert igazából nem nagyon tudom h mit csinálnak ezek a default parancsok..
magyarul most nagyon noob voltam? 
lehet h nem ezzel kéne foglalkoznom

Jester01
(PH! addikt)
strcmp: <0 =0 >0 értéket add vissza attól függően, hogy az első string kisebb, egyenlő vagy nagyobb mint a második. compare fv-t nem tudom honnan vetted, nincs a feladatban.
strstr igazából az strchr-hez hasonlóan pozíciót kellene visszaadjon mivel a te implementációdban a char*-nak szerintem semmi értelme.
Jester

amargo
(PH! addikt)
Benéztem, csak a %s- re figyeltem fel.
“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!” const int GetAnswerToLifeTheUniverseAndEverything() const{ return 42; }

nukeleo
(újonc)
hali
Azt szeretném , hogy mielott kiirom a fileba az adatokat, törölje ki az adat2.txt -bol ami benne van_???
Hogy lehetne?
void kiir(buffer& b)
{
fstream fp(''adat2.txt'',ios:
ut);
fp<<b.buff;
fp.close();
}
THX

PazsitZ
(PH! addikt)
Mikor megnyitod a file-t használd a w paramétert és így ha létezik a fájl törli a tartalmát.
''w'' Create an empty file for writing. If a file with the same name already exists its content is erased and the file is treated as a new empty file.
"...kis zártkörû PH-s imdb..." :D - http://phmovies.pazsitz.hu - http://pazsitz.hu -

Jester01
(PH! addikt)
Ez konkrétan kitörli. Neked nem? Megadhatod még az ios::trunc flaget is, de elvileg az a default.
[Szerkesztve]
Jester

nukeleo
(újonc)
Hali!
Bocs az elözző üzenetemért, csak nagyon kész vagyok ,mert holnapra kell leadnom a házimat,és ilyenkor szoktam hülyeségeket beszélni!
Az utlsó elötti üzenetemben mar irtam mit szeretnék, de most akkor konkrétabban leírom:
Azt szeretném megcsinálni, hogy egy beolvasott fileban (szöveges) lekérdezni hány sor van, és tudjak beszurni / törölni sorokat a megadott sorba!
Azt az utasítast kaptam hogy : operator[] (indexelő operatort ) használatával!
Ha tudtok vmi függvénnyel segíteni, vagy mar kész progit mutatni, köszönöm!

Jester01
(PH! addikt)
Elég buta dolog ilyen megkötést adni, hogy az [] operátort kell használni...
Mindenesetre a legegyszerűbb megoldás ha fogsz egy vector<string> változót és szépen beolvasod a sorokat a fájlból. Abban aztán indexelhetsz [] operátorral, beszúrhatsz/törölhetsz és a végén kiírod újra az egészet.
Jester
de mondom ez a feladatkiírás!amit az 1. hszemben írtam mmint a témával kapcsolatban
azt kell csinálni
ihazából fogalmam sincs h akkor mivan.

nukeleo
(újonc)
Sziasztok!
A kérdésem az lenne, hogy itt van ez a beolvas függvény:
void beolvas(buffer& b)
{
int k=karakterek_szama();
delete[] b.buff;
b.buff=new char[(b.size=k)+1];
fstream fp(''adat.txt'',ios::in);
while(!fp.eof())
{
fp.getline(b.buff,b.size);
}
fp.close();
}
Hogy kellene módosítani ezt(vagy lehet mást is ajánlani), hogy paraméterként elötte lehetne a fájl nevét bekérdezni, és azt a fájlt
nyitná meg utána????
köszi a válaszokat.

nukeleo
(újonc)
Sziasztok!
Ittlenne a kódom: nem tudom miert csak egy sort olvas be a forrásfájlbol, a bufferba? Segitsetek, lehet a beolvas függvényem nem jo, vagy a buff tárolo, nem tudom...
/*csomo felesleg is van most benne amit nem használtam még, tekintsetek el töle*/
THX nagyon elöre is; nukeleo
#include <cstring>
#include <iostream>
#include <fstream>
using namespace std;
class buffer {
char* buff;
int size;
public:
buffer():buff(0),size(0){}
buffer(const buffer&);
buffer& operator=(const buffer&);
buffer& operator+=(const buffer&);
bool operator==(const buffer&);
buffer& buffer:: operator=(const char*);
buffer& buffer:: operator+=( const char*);
bool buffer:: operator==(const char*);
friend void beolvas(buffer &);
friend void kiir(buffer &);
//void beolvas(const char*);
friend ostream& operator<<(ostream& s, const buffer b);
friend istream& operator>>(istream& s, const buffer b);
~buffer(){ delete[] buff; }
};
/*void beolvas(const char* file)
{
fstream fp(file,ios::in);
char *c = new char[500];
fp.close();
fp>>c;
cout<<c;
}
*/
buffer::buffer(const buffer& e)
{
buff=new char[(size=e.size)+1];
if (e.buff)
strcpy(buff,e.buff);
}
buffer& buffer:: operator+=( const char* value)
{
char* temp=new char[size = strlen(buff)+ strlen(value) +1];
strcpy(temp,buff);
strcat(temp, value);
delete[] buff;
buff = temp;
return *this;
}
buffer& buffer:: operator+=(const buffer& e)
{
char* temp=new char[size+=(e.size+1)];
strcpy(temp,buff);
strcat(temp,e.buff);
delete[] buff;
buff=temp;
return *this;
}
buffer& buffer:: operator=(const char* value)
{
delete[] buff;
if( size=strlen(value))
{
buff=new char[size+1];
strcpy(buff,value);
}
return *this;
}
buffer& buffer:: operator=(const buffer& e)
{
if( this!= &e)
{
delete[] buff;
buff=new char[size=e.size];
strcpy(buff,e.buff);
}
return *this;
}
bool buffer:: operator==(const char* value)
{
if(size==strlen(value)) return true;
else return false;
}
bool buffer:: operator==(const buffer& e)
{
if(size==e.size) return true;
else return false;
}
ostream& operator<<(ostream& s, const buffer b)
{
//for(int i=0;i<b.size;++i)
//{
if(b.size)
s<<b.buff;
//}
return (s);
}
int karakterek_szama()
{
fstream fp(''adat.txt'' ,ios::in);
char d;
int k=0;
while(!fp.eof())
{
fp.get(d);
++k;
}
fp.close();
return k;
}
istream& operator>>(istream& s, buffer b)
{
int k=karakterek_szama();
delete[] b.buff;
b.buff=new char[(b.size=k)+1];
for(int i=0;i<b.size;++i)
{
s>>b.buff;
}
return (s);
}
void beolvas(buffer& b)
{
int k=karakterek_szama();
delete[] b.buff;
b.buff=new char[(b.size=k)+1];
fstream fp(''adat.txt'' ,ios::in);
while(!fp.eof())
{
fp.getline(b.buff,b.size);
}
fp.close();
cout<<k;
}
void kiir(buffer& b)
{
fstream fp(''adat2.txt'',ios:
ut);
fp<<b.buff;
fp.close();
}
char menu ()
{
char n;
cout<<'' MENU \n\n'';
cout<<''1: File beolvasás \n'';
cout<<''2: Szöveg hozzáadása a fájlhoz \n'';
cout<<''3: Aktualis buffer tartalma\n'';
cout<<''4: Mentés\n'';
cout<<''0: Exit \n'';
cin>>n;
return n;
}
int main(){
char m;
buffer a;
buffer b;
char *c = new char[20];
char *d = new char[500];
while ((m = menu())!= '0')
{
switch (m)
{
case '1':
beolvas(b);
cin.get();
cin.get();
break;
case '2':
cin>>d;
b+=d;
;
break;
case '3':
cout<<b;
cin.get();
cin.get();
break;
case '4':
kiir(b);
break;
}
system (''CLS'');
}
}

KMan
(senior tag)
Mi a rakert nem tudok egy tomb i-edik elemet bemasolni egy valtozoba?? 
mind2 ugyanolyan tipusu. nem jo neki az ertekadas operator?? 
tomb[ i ].valamit=valamibe;
hulyetkapok.
ki is printelem a valamit, meg a valamibe-t, de a valamibe-re 0.000000 dob...
Csak a balekok alszanak „Mindennek, aminek nekifogunk, célja a VÁLTS_ – és mindent, amin VÁLToztatunk_, jobbá és a Nissanra jellemzőbbé teszünk” – Carlos Ghosn [SAS]

KMan
(senior tag)
sikerult a rohadt eletbe, fel kell cserelni ezt a szart. ez egy fereg ez a fordito.
menten idegosszeroppanast kapok.
Csak a balekok alszanak „Mindennek, aminek nekifogunk, célja a VÁLTS_ – és mindent, amin VÁLToztatunk_, jobbá és a Nissanra jellemzőbbé teszünk” – Carlos Ghosn [SAS]

caddie
(újonc)
De most komolyan. Ettol egyertelmubb dolog nincs, hogy az ertekadas bal oldalan allo operandusnak adod ertekul az ertekadas jobb oldalan allo operandust. Mar a matematikaba is szinte mindig igy van a:={...}. Ez igazan nem a fordito hibaja.
''C++ : Where friends have access to your private members.'' — Gavin Russell Baker.

caddie
(újonc)
Nem lenne hatranyos, hogy ha
- leszukidened a kodod a relevans reszekre, nehogy mar nekunk kelljen megfejteni, hogy pontosan mire gondolsz
- egy paste-bin -be betenni es egy linket adni, mert teljesen olvashatatlan igy indentalas nelkuk
Ha ezt megteszed szivesen segitek, addig bocs, de az alabbi behanyt kodra nem szivesen fut ra a tekintetem.
''C++ : Where friends have access to your private members.'' — Gavin Russell Baker.

amargo
(PH! addikt)
int main(int argc, char* argv[])
(...)
az argv[] tartalmazza a paramétert, az argc pedig a számot, hogy hány van stb.
“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!” const int GetAnswerToLifeTheUniverseAndEverything() const{ return 42; }

shev7
(PH! kedvence)
jujjj.... es ha mindegy lenne a forras meg a cel sorrendje, akkor a fereg fordito mi alapjan dontene el, hogy mit akarsz hova masolni?
''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
Átírtam ennek szellemében. 
Igazad volt, és mégegyszer köszi!
Skynet is real. It's called Google.

Nowa
(újonc)
Sziasztok! Nem találtam jobb topikot, újat meg nem akartam nyitni: nekem C -ben lenne szükségem némi segítségre.
Ncurses-ben kell írni egy játékprogramot, de sajnos már nem maradt idő arra, hogy rendesen megtanítsák nekünk, ezért kérek segítséget.
Egy amolyan ''légvédelem''-progit kéne írni, ahol csillagok -lehetőleg egyszere több- hullanak lefelé, és egy O -val (ami a célkerszt) kéne levadászni őket, mielőt leesnek (akkor vége). A célkereszt mozgatása megvan, a leeső csillagokkal már nagyobb gondban vagyok, van pár minta-forráskódom (kígyó,pattogólabda), azokból próbálok rájönni hogy mit hogy kell. De hát elég nehézkesen haladok.
A másik egy olyan progi lenne, ahol menüből választhatok matematikai eljárások közül (azokat vágom), csak a menühöz kéne némi segítség, mert az is ncurses-ben van.
Ja, linux alatt futó C-ről van szó!
Előre is köszönök bármilyen segítséget.

jancsi881109
(tag)
Sziasztok!
A segitségetekre lenne szükségem, gépemen Windows Vista op rendszer van, és vmiért nem hajlandó 1 c programot sem lefordítani.. Felraktam már a Dev-c++ -t és a Code:
locks nevü progikat is,de egyik sem hajlandó fordítani.. 
1 ilyen hibaüzivel leáll a progi:
mingw32-g++.exe: no input files
Ez a Vista miatt lehet? Ti tapasztaltatok ilyet? Mi lehet a megoldás?
Üdv Jancsi
''Te is fiam, Bluetooth?''

Lortech
(PH! addikt)
(dupe, törölhető)
[Szerkesztve]

Lortech
(PH! addikt)

atm*RefeeZ
(tag)
hello
ilyen kérdésem lenne,hogy valaki nem tudja-e,hogy mi okoz olyan "hibát",hogy ilyenre
int j;
randomize
j=random(13)+1; (ugye elvileg 1-13 tartományban lennének a számok) j= 1494-et dob ki.
ötletek?köszönöm előre is
(#241) atm*RefeeZ válasza atm*RefeeZ (#240) üzenetére

atm*RefeeZ
(tag)
bocsi buta voltam. sima %d volt és nem adtam meg változót,arra írta ki.

kvantum
(újonc)
Sziasztok!
nem tudna valaki egy bios.h-t kuldeni vagy linkelni nekem?
Dev-C++-t hasznalok,es az nem ismeri,neten meg nem igazan talaltam letoltheto verziot.
elore is kosz.

szigisz85
(újonc)
Üdv!
NxN matrix determinánsának meghatározaása! Ezt kell megírnom C++-ban. Kerestem már megoldásokat, de részletesebb valamit nem.

PazsitZ
(PH! addikt)

szigisz85
(újonc)
Köszönöm a linkeket! Mostmár remélem megtudom írni.

Janos03
(újonc)
Sziasztok!
Nem rég van programozásunk( borland c++ ), és ennél a feladatnál elakadtam:S hiába nekiülök, nem tudom megcsinálni, légyszives segítsetek!
Előre is köszönöm!
Egy K körlemezt a következő adatokkal adunk meg: K(xk,yk,r,), ahol xk és yk a körlemez középpontjának koordinátái, rk pedig a körlemez sugara. Egy tetszőleges P(x,y) pont-ahol x és y a pont koordinátái-rajta van a K körlemezen ha(xk-x)négyzeten+(yk-y)négyzeten<=rknégyzeten
Készítsen programot, amely a billentyúzetről beolvassa két körlemez és egy pont adatait, majd az adatok alapján kiiírja a képernyőre az alábbiak közül a megfelelő állítást:
"A pont egyik körlemezen sincs rajta."
"A pont csak az elsőként megadott körlemezen van rajta."
"A pont csak a máasodikként megadott körlemezen van rajta."
"A pont a megadott körlemezek közös részén található."
[ Szerkesztve ]

Nantucket
(kvázi-tag)
Nem igazán értjük, pontosan hol akadsz ezzel el. Ha valami konkrét kérdésed van biztos válszol valaki, de ilyen általánosságban senki se fog. Egyébként ilyenkor google szokott a leghasznosabb lenni, használd. Egyébként meg ezt a feladatot printf() scanf() if-else és a Math könyvári függvények nem túl bonyolult kombinációjával meg fogod tudni oldani (max 50 sor), ha vhol elakadsz írj.
Gyűlölöm a HDD-ket

.DLL
(senior tag)
Üdv! Levelezőn kezdtem C-t tanulni és egy olyan kérdésem lenne hogy milyen függvénnyel lehet karaktert tesztelni, hogy az szám-e vagy betű-e (pl. ahova számot kér a progi ne lehessen kiakasztani betű beírásával.
getch(); esetén elvileg az ASCII kódtábla alapján lehet szűrni hogy csak a 0x30 és 0x39 közötti karaktereket (amik elvileg 0-9-ig a számok) engedje bevinni, de ha scanf( );-el kérek be adatot akkor hogyan lehet ezt megoldani?
Előre is köszönöm a segítséget!
[ Szerkesztve ]

Jester01
(PH! addikt)
%[0-9]
De ez C nem C++
[ Szerkesztve ]
Jester












