- A Colorful "fagyosan kompakt" alkatrészekkel megy elébe a nyárnak
- A Keychron ismét egy űr betöltését vállalta magára az egerek szegmensében
- Az átlagnál vaskosabb ventilátorok kandikáltak ki a Corsair vitorlája mögül
- Csatába küldte Magyarországon idei csúcs hangprojektoros szettjét a Samsung
- Karácsonyfaként világíthat a Thermaltake új CPU-hűtője
Hirdetés
-
VR játék lesz az Batman: Arkham Shadow (Meta Quest 3)
gp Egyelőre csak egy teaser trailert kaptunk a teljes leleplezésre a Summer Game Festen kerül sor.
-
Mindenki AI-t akar, már 2025-re is eladták a HBM chipeket
it Az SK Hynix jelezte: akkora a terjeszkedés az AI-szolgáltatások piacán, hogy 2024-re az összes, 2025-re közel az összes HBM chipet eladták.
-
Ennyibe kerülnek a Huawei Pura modellek Európában
ma Megérkezett az újrabrandelt Pura széria, kivéve a Pura 70 Pro+-t, mert az marad Kínában.
Új hozzászólás Aktív témák
-
ktg3
őstag
vki pls help me
mindjárt leverem a gépet az asztalról mert nem megy és 1szerűen nem tudom h hol a hiba
//main
#include ''fifo.h''
#include <stdio.h>
void main ()
{
int array[]={0,1,2,3,4,5,6,7,8,9};
fifo m;
for(int i=0;i=9;i++)
m.push(array);
printf (''%d\n'', m.pop());
}
//fifo.h
#ifndef FIFO_H
#define FIFO_H
class fifo
{
int *t,elementnum;
public:
fifo () {t=0,elementnum=0;}
void push (int n);
int pop ();
~fifo (){delete []t;}
};
#endif
//fifo fgvk
#include <stdio.h>
#include ''fifo.h''
void fifo::push (int n)
{
int *tmp,i;
tmp=new int [elementnum+1];
for (i=0;i<elementnum;i++)
tmp=t;
tmp[elementnum-1]=n;
delete []t;
elementnum++;
t=tmp;
}
fifo::pop ()
{
int *tmp,i,x;
tmp=new int [elementnum-1];
for (i=0;i<elementnum-1;i++)
tmp=t;
x=t[elementnum];
delete []t;
elementnum--;
t=tmp;
return x;
} -
ktg3
őstag
sziasztok
aki nekem megmondja h mi a hiba leírja és el is magyarázza annak 1-2 heineken jár bp-n!
itt a link ahol van a progi:[link]
üdv:ktg
mod:ja és persze csak az 1. segítőnek jár sör
megoldást püben várok
[Szerkesztve] -
ktg3
őstag
vki segítesen legyen szíves!!!
combos kis hsz lesz...
szokásszerint megint nem tudom h hol a hiba
biztos lesz benne egy rahedli..
amig nem írtam meg az utólsó 4 fgv-t addig működött jól..
szal ott keresendő a hiba!
köszönöm!
//string.h
#ifndef STRING_H
#define STRING_H
#include <iostream>
namespace TheUltimateString
{
class String
{
// A karakterek aktuális száma:
unsigned int elementsNum;
// A karaktereket tartalmazó memóriaterületre mutató pointer:
char*pData;
public:
// Argumentum nélküli konstruktor:
String();
// Másoló konstruktor:
String(const String&string);
// Egy NULL végu sztringet váró konverziós konstruktor
// Ez felel a char*-> String konverzióért
String(const char* str);
// Egy karaktert és egy elojel nélküli egészet (times) váró konstruktor,
// amely times darab c karakterrel inicializálja a stringet:
String(char c, unsigned int times);
// A destruktor:
~String(){delete[]pData;}
// Visszatér a sztring hosszával
unsigned int getLength()const{return elementsNum;}
// Kiírja a sztringet a megadott kimeneti adatfolyamba (a 'cout' ostream típusú):
void print(std:stream& os);
// Visszaadja a megadott pozícióban lévo karaktert, egyébként nullát:
char& operator[](unsigned int pos);
// Konstans objektumokat is le szeretnénk kérdezni
const char& operator[](unsigned int pos)const;
// Összefuz két Stringet
String operator+(const String& theOther)const;
const String& operator+=(const String &theOther);
const String& operator=(const String& theOther);
bool operator==(const String& theOther)const;
bool operator!=(const String& theOther)const;
// Visszaad egy csak olvasható hozzáférést a stringhez
operator const char*()const;
// --- Statikus függvények. Ezek két stringen végeznek muveletet. ---
// Összefuz két sztringet, és visszatér vele:
static String concatenate(const String& string1, const String& string2);
// Összehasonlít két sztringet:
static bool compare(const String& string1, const String& string2);
// A második sztringet az elso sztringbe másolja:
static void copy(String& string1, const String &string2);
unsigned int strlen(const String& s);
int strchr(const String& s,char c);
bool strcmp(const String& s1,const String& s2);
char* strstr(const String& s1,const String& s2);
};
}
#endif /* STRING_H */
//string.cpp
#include ''String.h''
using namespace std;
using namespace TheUltimateString;
// Argumentum nélküli konstruktor:
String::String()
{
elementsNum=0;
pData=new char[1];
pData[0]='\0';
}
// Másoló konstruktor:
String::String(const String& string)
{
*this=string;
}
// Egy NULL végu sztringet váró konverziós konstruktor
// Ez felel a char*-> String konverzióért
String::String(const char* str)
{
elementsNum=strlen(str);
pData=new char[strlen(str)+1];
for(unsigned int i=0;i<strlen(str)+1;i++)
pData=str;
}
// Egy karaktert és egy elojel nélküli egészet (times) váró konstruktor,
// amely times darab c karakterrel inicializálja a stringet:
String::String(char c, unsigned int times)
{
elementsNum=times;
pData=new char[elementsNum+1];
for(unsigned int i=0;i<elementsNum;i++)
pData=c;
pData[elementsNum]='\0';
}
// Kiírja a sztringet a megadott kimeneti adatfolyamba (a 'cout' ostream típusú):
void String::print(ostream& os)
{
os<<pData<<endl;
}
// Visszaadja a megadott pozícióban lévo karaktert, egyébként nullát:
char& String:perator[](unsigned int pos)
{
return pData[pos];
}
// Konstans objektumokat is le szeretnénk kérdezni
const char& String:perator[](unsigned int pos)const
{
return pData[pos];
}
// Összefuz két Stringet
String String:perator+(const String& theOther)const
{
String s;
s.pData=new char[elementsNum+theOther.elementsNum+1];
for(unsigned int i=0;i<elementsNum;i++)
s.pData=pData;
for(i=0;i<theOther.elementsNum;i++)
s.pData[i+elementsNum]=theOther.pData;
s.elementsNum=elementsNum+theOther.elementsNum;
s.pData[s.elementsNum]='\0';
return s;
}
const String& String:perator+=(const String &theOther)
{
char* tmp=new char[elementsNum+theOther.elementsNum+1];
for(unsigned int i=0;i<elementsNum;i++)
tmp=pData;
for(i=0;i<theOther.elementsNum;i++)
tmp[i+elementsNum]=theOther.pData;
this->elementsNum+=theOther.elementsNum;
tmp[elementsNum]='\0';
delete[]pData;
this->pData=tmp;
return *this;
}
const String& String:perator=(const String& theOther)
{
elementsNum=theOther.elementsNum;
pData=new char[theOther.elementsNum+1];
for(int i=0;i<theOther.elementsNum;i++)
pData=theOther.pData;
pData[elementsNum]='\0';
return *this;
}
bool String:perator==(const String& theOther)const
{
if(elementsNum!=theOther.elementsNum)
return false;
else
{
int not=0;
for(int i=0;i<elementsNum;i++)
{
if(pData!=theOther.pData)
{not=1; break;}
}
if(not) return false;
else return true;
}
}
bool String:perator!=(const String& theOther)const
{
if(theOther==*this)
return false;
else return true;
}
// Visszaad egy csak olvasható hozzáférést a stringhez
String:perator const char*()const
{
return pData;
}
// --- Statikus függvények. Ezek két stringen végeznek muveletet. ---
// Összefuz két sztringet, és visszatér vele:
String String::concatenate(const String& string1, const String& string2)
{
String s;
s.elementsNum=string1.elementsNum+string2.elementsNum;
s.pData=new char[s.elementsNum+1];
for(int i=0;i<string1.elementsNum;i++)
s.pData=string1.pData;
for(i=0;i<string2.elementsNum;i++)
s.pData[string1.elementsNum+i]=string2.pData;
return s;
}
// Összehasonlít két sztringet:
bool String::compare(const String& string1, const String& string2)
{
if(string1.elementsNum!=string2.elementsNum)
return false;
else
{
int not=0;
for(int i=0;i<string1.elementsNum;i++)
{
if(string1.pData!=string2.pData)
{not=1; break;}
}
if(not) return false;
else return true;
}
}
// A második sztringet az elso sztringbe másolja:
void String::copy(String& string1, const String &string2)
{
string1.elementsNum=string2.elementsNum;
string1.pData=new char[string2.elementsNum+1];
for(int i=0;i<string2.elementsNum+1;i++)
string1.pData=string1.pData;
}
unsigned int String::strlen(const String& s)
{
return s.elementsNum;
}
int String::strchr(const String& s,char c)
{
for (int i=0;i<s.elementsNum;i++)
if (s.pData==c)
return i+1;
}
bool String::strcmp(const String& s1,const String& s2)
{
if (s1.elementsNum==s2.elementsNum)
for (int i=0;i<s1.elementsNum;i++)
{
if (s1.pData!=s2.pData)
return false;
if (i==s1.elementsNum-1)
return true;
}
else return false;
}
char* String::strstr(const String& s1,const String& s2)
{
char* s=''nincs benne/0'';
char* string2=new char [s2.elementsNum+1];
for (int i=0;i<s2.elementsNum;i++)
string2=s2.pData;
string2[s2.elementsNum]='/0';
for (i=0;s1.elementsNum;i++)
{
if (s1.pData==s2.pData[0])
{
for (int j=0;j<s2.elementsNum;j++)
{
if (s1.pData[j]!=s2.pData[j])
return s;
if (j==s2.elementsNum-1)
return string2;
}
}
}
}
//theultimatesample.cpp
#include <iostream>
#include ''String.h''
using namespace std;
using namespace TheUltimateString;
int main()
{
String str1=''Hello Moneypenny.'';
printf(str1);
str1=''My name is Bond. '';
str1+=''James Bond.'';
printf(''\n%s\n'',(const char*)str1);
if(str1==(String)''My name is Bond. James Bond.''
&&!(str1!=(String)''My name is Bond. James Bond.''))
{
cout<<''Oh, Mr. Bond!''<<endl;
}
return 0;
}
belefért -
ktg3
őstag
na ebben megint nem találom, a bugot...
segít vki??
[link] -
ktg3
őstag
válasz Jester01 #127 üzenetére
nekem összesen 2 db hibaüzit dob..
az a baja h nem működik meg annyira nem is értem h h működik ez a template..
elvileg le kéne h fusson ez a baja: D
mmint a tudásom szerint
mert ugyen aza akar lenni h a vector osztály tudjon megadott típussal működni..
szal azokat az inteket ( eredetileg inteket tárolt) írtam át tre ahol sztem kellett..
szal annyira konkrétan a szintaktikát sem tudom
annyit találtam róla ha a headeren belül implementálod a fgv-eket akkor mindegyik elé kell az a temlate <class T>... -
ktg3
őstag
húbazz kaptam a fejemre
kösz szépen..
megfontolom..
de aki ilyen kezdő -
ktg3
őstag
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 -
ktg3
őstag
help pls
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Gigabyte Brix GB-BRR3H-4300 4300u, 16GB DDR4, 256GB SSD
- HP Probook 450 G5 - 8th Gen i5/8GB/128GB
- Ritkaság! Alienware AW5520QF Oled Gamer Monitor!55"/4k/120hz/0,5ms/Alienfx RGB
- LG34UM68-P 21:9-es Ultra Wide monitor eladó!
- HP Envy x360 15,6 IPS LED Gorilla Glass i7, 16GB, 1TB fémházas 3az1 notebook + HP toll - harmad áron