- Samsung Galaxy Watch7 - kötelező kör
- Xiaomi Mi 11 Ultra - Circus Maximus
- Vivo X200 Pro - a kétszázát!
- Samsung Galaxy A53 5G - kevesebbet többért
- Rendkívüli terméktámogatást ígér a Nothing
- Mobil flották
- VoLTE/VoWiFi
- Apple iPhone 16 Pro - rutinvizsga
- Ford SYNC 3 infotainment rendszer teszt
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
Új hozzászólás Aktív témák
-
dabadab
titán
válasz
don_peter #4570 üzenetére
[ disclaimer: elso komoly programozasi dolgaim C64-en, assemblerben voltak, aztan utana modernebb mikrokontrollerekhez is volt szerencsem, szoval ismerem ezt a vilagot
]
"#define FIRST_ROW_BIT_POSITION 4"
Így gyakorlatilag csak egy értéket adunk FIRST_ROW_BIT_POSITION nak és nem tudjuk később léptetni a mikrocsip lábait.De. Azert adunk hozza i-t. Vegyuk eszre, hogy a
SOROK = (1 >> ( FIRST_ROW_BIT_POSITION + i ) );
ugyanaz, mint a
SOROK = ( ( 1 >> FIRST_ROW_BIT_POSITION ) >> i ) );
ami meg jelen esetben nem mas, mint
SOROK = ( 0x08 >> i ) );
(Mondjuk elrontottam, mert FIRST_ROW_BIT_POSITION helyes erteke 3, nem 4)
"int oszlopok[] = { PORT_B4, PORT_B5, PORT_B6, PORT_B7 };"
Ezt ugyan nem próbáltam még ilyen formában, de van egy sejtésem, hogy nem jó mivel értéknét adjuk át a az egyes portok egyes lábait.Nem volt teljesen egyertelmu, hogy ezek micsodak, de ha memory mapped portok, akkor annyi valtozik, hogy nem int, hanem char * lesz az oszlopok[] tipusa.
"#define NO_KEY 0"
Gyakorlatilag ugyan az mint az én
"#define ALACSONY 0" definícióm.Legfeljebb a fordito szempontjabol, de a kodot hasznalo programozok szempontjabol egyaltalan nem.
Ugyanis ott az ALACSONY jol lathatoan a MAGAS parja, amit arra hasznalsz, hogy megvizsgald, hogy valamelyik bit hogyan all.
Viszont a getchar() egyaltalan nem egy bit allasat adja vissza, hanem egy karakterkodot, ami logikailag abszolut mas dolog."A ciklus végtelen pergésben van"
Nincs abban. Az eredeti kododban egyetlen ciklus van, ami pontosan negyszer fut le.
Ha arra gondoltal, hogy a getchar()-t kivulrol vegtelen ciklusban hivod, az meg nem szamit, mert azzal kezdodik, hogy lenullazod a k-t, vagyis nem tud 16 fole noni az erteke (es teljesen feleslegesen nullazod, mert auto valtozokent a stacken van az erteke, a kovetkezo hivasig nem orzodik meg - persze csinalhatnal belole staticet, de annak meg semmi ertelme nem lenne, mert nincs ra szukseged)."Egyszóval, ha sima C programnak tekintjük akkor tökéletes a példád, de sajnos itt figyelembe kell venni, hogy mikrokontrollert programozunk fel illetve a lábak szintjeit ellenőriztük."
Ilyen szempontbol ez tok sima C program, tenyleg nincs benne semmi extra. Persze, embedded cuccoknal lehetnek extra kovetelmenyek (pl. hogy ROM-ot lehessen belole forditani, vagyis pl. a konstans tomboket nem lehetne koddal inicializalni, csak statikus ertekekkel), akkor az hozhatna par dolgot, de igazabol az is sima C. A mikrokontroller-programozas tenyleg nem az a nagy varazslat
-
dabadab
titán
válasz
don_peter #4568 üzenetére
#define SOROK_SZAMA 4
#define NO_KEY 0
#define FIRST_ROW_BIT_POSITION 4
int oszlopok[] = { PORT_B4, PORT_B5, PORT_B6, PORT_B7 };
unsigned char get_key()
{
unsigned int i, k=0;
for( i=0; i < SOROK_SZAMA ; i++ )
{
SOROK = (1 >> ( FIRST_ROW_BIT_POSITION + i ) ); //Léptetjük a sorok szintjét
for ( j = 0 ; j < sizeof(oszlopok) ; j++ )
{
k++;
if(oszlopok[j] == MAGAS)
{
while( oszlopok[j] == MAGAS ); //Várakozunk a gomb felengedéséig
return k;
}
}
}
return NO_KEY;
}Vagyis az oszlopokat szepen tombbe lehet rakni, es akkor a ciklusbol tenylegesen ciklust lehet csinalni.
A k-t allitgato resznek semmi ertelme nem volt, mert csak arra allitotta, ami amugy is az erteke volt (illetve a vegen nullara, de azt meg nem hasznaltad sehol).
Es ha nem talal semmit, akkor nem ALACSONY-t adunk vissza, hanem valami sajat erteket, mert az logikailag ket kulonbozo dolog - akkor is, ha a konkret ertek pont ugyanaz (most - aztan lehet, hogy kesobb nem lesz az).
Illetve a kodba lehetoseg szerint nem illik mindenfele konstansokat elhinteni, ha valami konstans, akkor legyen az, C-ben tipikusan #DEFINE-nal.
-
-
-
dabadab
titán
"Allat ez a 2048,,, elcsesztem vele 2 orat"
Bocs
"azt mondjuk nem tudom, hogy hogyan lett ez 11ezer pont"
Minden egyesitesert annyi pontot kapsz, amilyen szam van az uj negyzeten, igy aztan egy 2^n kocka eloallitasaert osszesen (n-1)*2^n pontot kapsz, egy 1024-es 9216 pont, a 256 meg 1792, pont meg is van a 11k.
-
dabadab
titán
válasz
don_peter #4500 üzenetére
Igazabol oktalisat meg hexat a binarisbol eleg egyszeru atszamolni, mivel (a tizes szamrendszerrel szemben) egy-egy helyiertekre fix mennyisegu bit esik: oktalisnal harom bit ad ki egy oktalis szamjegyet, hexadecimalisnal meg negy.
Szoval ha van egy olyan szamod, hogy 10101101001011, akkor ki se kell szamolnod, hogy az mennyi is valojaban, hanem anelkul at tudod valtani.
Oktalisba harmasaval csoportositva (az elejere raktam plusz nullakat, hogy mindenhol meglegyen a harmas csoport):
010|101|101|001|011 = 25513Hexadecimalisba meg negyesevel:
0010|1011|0100|1011 = 2B4BDecimalisnal persze kenytelen vagy tenylegesen vegigszamolni (2048 jatekosok elonyben
):
10101101001011 = 1+2+8+64+256+512+2048+8192 = 11083 -
dabadab
titán
válasz
buherton #4492 üzenetére
"Következő példád az emberi gyarlóságra vezethető vissza."
Meg arra, hogy nem volt rendes verziokezeles meg kodreview meg unit test. Eddigi palyafutasom alatt nagyobbreszt ugy dolgoztam, hogy csak ugy lehetett valamit becheckelni, hogy azt valaki review-zta, ott meg kibukott volna az ilyen idetlenkedes. Vagy ha ott nem, akkor unit testen.
-
dabadab
titán
"Pont nem latszik, mit csinal a programreszlet"
// count how many bits are set in num
Egyebkent pl. a quicksort meg egy csomo minden mas algoritmus sem arrol hires, hogy elso ranezesre latszik, hogy mit csinal.
"mert a shift es also bit szamolasanal se nem gyorsabb, se nem mellekhatas-mentesebb"
Fogadunk?
-
dabadab
titán
válasz
buherton #4441 üzenetére
"C a beágyazott rendszerek egyeduralkodó nyelve."
Mondjuk en foleg nagyobbfajta rendszereket bizergaltam (nem kis dobozba, hanem nagyobbfajta szekrenyekbe voltak beagyazva
), de ott a regebbi cuccokon CHILL, ujabbakon meg C++, sot, Java volt.
"Honnan tudja futás közben, hogy hogyan lehet optimalizáltabb?"
Az ilyen dinamikus cuccok futas kozben is profilozzak a kodok es folyamatosan a bejovo adatokhoz tudjak optimalizalni, a Transmeta CPU-ja is ezt csinalta (mondjuk hogy most a konkret esetben tenyleg ujraforditja-e es ha igen, akkor mire, azt passzolom).
-
dabadab
titán
válasz
alapz@j #4423 üzenetére
Amit nem ertek, az az, hogy hogy a csudaba lesz a java gyorsabb. Megneztem magamnal is, a konkret loop, amit mer, arra ezt a kodot generalja a gcc:
.L14:
movsd 0(%rbp,%rdx), %xmm1
ucomisd %xmm2, %xmm1
jbe .L11
addsd %xmm1, %xmm0
.L11:
addq $8, %rdx
cmpq $800000000, %rdx
jne .L14Hogy ennel mi lehet gyorsabb, arrol fogalmam sincs, marpedig a java (legalabbis a rendezetlen tombnel) tenyleg gyorsabb egy jo 7-8%-kal.
-
dabadab
titán
válasz
TheProb #4419 üzenetére
A C az gyakorlatilag platformfuggetlen assembler, ami tamogat strukturalt programozast is, manapsag mar leginkabb csak par specialis helyen hasznaljak.
A C++ ennek eggyel jobban elvont valtozata, ami tamogatja a nyolcvanas meg kilencvenes evek, sot, a 2011-es C++11 szabvany (amit olyan nagyon sok helyen meg nem hasznalnak) egyre inkabb a XXI. sz. elejenek mindenfele dolgait (objektumorientalt programozas, template-ek, ill. parhuzamos programozas, stb), de meg mindig nativ kodot futtat. Nekem ugy tunik, hogy manapsag ez a fo nyelv, ha nagy projekteket csinalnak.
A C# meg tulajdonkeppen a Java Microsoft-fele valtozata, meg egy fokkal elvontabb, virtualis gepek programozasara szantak es persze a Microsoft-vilagon kivul nem nagyon mukodik.
-
-
dabadab
titán
válasz
TheProb #4390 üzenetére
A fobb gondok:
1. A visszateresi ertek.
A char az egyetlen egy darab karakter. Ha tobb karakterre (stringre) van szukseged (marpedig itt arra van) akkor char*-ot kell visszaadnod, mert jelenleg a fuggveny csak a szam legelso karakteret adja vissza.
2. Memoriafoglalas
Annyi memoriat foglalsz a romai szamoknak, amennyibe pont belefer a szam arab szamokkal. Ezzel egyreszt ket gond is van:
1. a romai szamoknak jo esellyel tobb hely kell
2. a string vegere meg oda kellene fernie a lezaro nullanak. Ugyanis C-ben ugy neznek ki a stringek, hogy van a szoveg es a vegen ott ven egy 0 erteku byte (nem egy '0' karakter!), hogy lehessen tudni, hogy hol a vege3. Stringkezeles
Az elejen a nullat a legelso helyre kell beirni (romai[0]=0), onnan kezdve az strcat az gondjat viseli. A te megoldasodnal meg ott marad az elso n darab helyen valami memoriaszemet es az strcat az utan fogja irni a dolgait.
4. nullas szamjegyek
Gondold vegig, hogy mit ir ki ez az ezresnel kisebb helyiertekeken, ha mondjuk 1000-et konvertalsz at vele
5. Az else ag
Ha legalabb ketjegyu a szam, akkor nem fogja kiirni az egyes helyierteku szamokat
6. Memoriafelszabaditas
Ha azt akarod, hogy a hivo lassa is, hogy mit irtal, akkor semmikeppen se szabaditsd fel azt a memoriat, amit eppen vissza akarsz adni neki.
A freenek hiba eseten lenne ertelme (mivel akkor nem adnad neki vissza a romai pointert, igy "elveszne" az a memoria (memory leak)), de itt mondjuk jobb, ha csak akkor foglalod le, ha mar eldontotted, hogy at tudod konvertalni a szamot.Igy hirtelen ennyi.
-
-
dabadab
titán
válasz
tototos #4233 üzenetére
mennyire jo megoldasod van?
en valami ilyesmit csinalnek:
uint16 array[4];
void insert(uint16 value, uint address)
{
uint pos;
uint shift;
pos = address >> 4;
shift = address & 0x0f;
array[pos] = value << shift;
array[++pos] = value >> ( 0x0f - shift);
}Mondjuk ezt erosen endian-fuggo, szoval inkabb at kellene irni unit8-as tombre, de a lenyeg ez, meg kinullazza a byte-ok szelet, szoval ott valami maszkolni meg orozni kell, ha ez baj.
-
dabadab
titán
válasz
skylaner #4230 üzenetére
"Dehát ez nem az strlen hibája."
De. Nem veletlenul talaltak ki az strnlen()-t.
"Most azért ne használjak egy már megírt fgv-t mert lehet, hogy hibás paraméterrel hívom meg?"
Igen, foleg ilyen esetekben, ahol a parameter jo esellyel nem magabol a programbol, hanem inputbol szarmazik, mivel ezzel hatalmas kaput nyitasz a buffer overflow exploitoknak.
"Tessék gondoskodni arról, hogy helyes paramétert adunk át a fgv-nek."
Hat, ha 100%-ra meg tudsz eskudni arra, hogy az strlen csak es kizarolag rendesen null-terminated stringet kap (es ha barhol, barmikor, barki megvaltoztat valamit a programban, ami miatt ez majd nem all fenn, akkor abban a pillanatban lecsereled), akkor csinald, de nekem joval egyszerubbnek tunik az strnlen() hasznalata.
-
dabadab
titán
válasz
Jester01 #4205 üzenetére
Kenytelen vagyok visszakozni: megtakaritana, mivel itt csupa char lenne. Ha amugy egy csomo intje meg pointere lenne, es akoze rakna be egy-egy chart, akkor nem lenne megtakaritas, mert ott azoknak a 4 / 8 byte-os alignmentje bekavarna, de ha tenyleg mindenki char, akkor nincs ilyen gond.
-
dabadab
titán
válasz
skylaner #4202 üzenetére
Mivel defaultban ugyis aligned az egesz, igy aztan abszolut semmit nem takaritasz meg azzal, hogy chart hasznalsz, csak egy plusz korlatot vezetsz be, ami aztan a kesobbiekben problemassa valhat (ugyanez vonatkozik az unsigned-ra is).
Es ha mar kapcsos zarojelek: igazabol erdemes mindig kirakni oket, szemleltetem.
Kiindulasi allapot:
for(i=0;i<n;i++)
if (palyak[i]==0)
{
nemsi_index[a]=i;
a++;
}Aztan az ember debuggol:
for(i=0;i<n;i++)
DEBUG("qweqwe");
if (palyak[i]==0)
{
nemsi_index[a]=i;
a++;
}Es maris kesz a katasztrofa, amihez raadasul az IDE-k boldogan asszisztalnak (true story
).
-
dabadab
titán
válasz
stranger28 #4193 üzenetére
Par dolog:
0. Az egesz cuccban egy darab komment sincs, pedig azt erdemes gyakorolni, mert kulon tudomany.
1. "magic value"-ket a kodba irni nem tul jo gyakorlat, jobb konstanskent kezelni oket, illetve C-ben makrokent, szoval "#define MIN100_NOT_FOUND -1"
2. A free()-ket erdemes pont forditott sorrendben meghivni, mint a malloc()-ot, egyreszt, mert ugy maradnak meg szepen a blokkok, masreszt meg lehet, hogy egy kesobb malloc()-olt strukturaban egy pointer egy elozoleg lefoglalt memoriateruletre mutat - es ha az elso free()-zed, a masodikrol meg azt gondolod, hogy az meg ervenyes adatokat tartalmaz, abbol baj lesz.
3. A valtozoneveket (konstansokat, makrokat, file-okat, kommenteket) angolul tessek irni.
4. A nemsi_index teljesen felesleges. Lehetne mondani, hogy azert van igy, hogy meglegyen a funkcionalis tagolas (beolvasas, feldolgozas, kiiras), de ez egyebkent sincs meg (amire teljesen elfogadhato magyarazat, hogy igy hatekonyabb a kod - leszamitva ezt a franya nemsi_indexet).
5. Ha megis a tagolas mellett dontenel, akkor erdemes lenne azt harom fuggvenybe kirakni.
-
dabadab
titán
válasz
PumpkinSeed #4024 üzenetére
De hat ezt kb. ranezesre lehet torni, ennel az is durvabb lenne, ha minden karaktert az elozovel xorolnad.
-
dabadab
titán
válasz
PumpkinSeed #4021 üzenetére
Miert, amugy hogy dekodolnad? Na, teljesen ugyanugy
Csinalsz valami ilyen fuggvenyt, hogy:
char decode(char x[3])
es ezt hivogatod:
for (c=0; c < length; c++)
{
decoded_str[ c ] = decode( &encoded_str[c*3] );
} -
dabadab
titán
válasz
PumpkinSeed #4019 üzenetére
Az, amit irtam: a kodolt szoveget haromszor akkora karaktertombben tarolod, mint amekkora az eredeti szoveg volt.
-
dabadab
titán
válasz
PumpkinSeed #4017 üzenetére
Aha, gondoltam, hogy itt valami felreertodott.
Egy char tomb egy helyere csak egy betu fer. Amit te megprobaltal, az a "multicharacter constant", ami igazabol int tipusu, a konkret erteke implementaciotol fugg es eroteljesen ellenjavallott az alkalmazasa (a maximum merete meg szinten implementaciofuggo, van, ahol negy karakterbol is allhat). Ha egyebkent levitted volna ket karakterre, akkor se azt csinalna, amit akarnal, hanem minden bizonnyal a kettobol vagy az egyik vagy a masik karakter kerulne a char tombodbe, nem mind a ketto. -
dabadab
titán
válasz
PumpkinSeed #4015 üzenetére
"egy string elem helyére max 2 darab karaktert lehet betenni,"
Ezt tovabbra sem ertem. Ha az a string[] char tipusu, akkor ott egy elem helyere csak egy karakter fer be. Ha mas a tipusa, akkor meg a konkret tipustol fug, hogy mennyit tudsz oda bezsufolni es mondjuk a logikusan adodo int meg barmilyen modern rendszeren 4 byte-os.
Ha valami olyan kodolast akarsz csinalni, ami fixen egy karakter -> n karakter, akkor a kezdeti char cleartext[20]-at egy char encoded[20*n] tombbe rakd at, semmi ertelme az ilyen trukkozesnek.
-
dabadab
titán
válasz
PumpkinSeed #4013 üzenetére
"Azt tudom, hogy egy pl egy string(i) helyre max 2 karaktert lehet tenni"
Ezt hogy?... Vagy arra gondolsz, hogy az a string tomb intekbol all es azoknak a kulonbozo byte-jait hasznalod fel?
Igazabol nem ertem az egesz felvetest, hogy mit akarsz csinalni es az miert jo -
dabadab
titán
válasz
PumpkinSeed #4009 üzenetére
"van egy n elemű szo[20] karaktertömböm"
Most akkor n vagy 20?
Amugy igazan at se kell rakni, hiszen a szo[20]-ban eleve a betuk ascii kodja van benne. -
dabadab
titán
válasz
overclockerr #3948 üzenetére
Lenyegtelenek.
Mondjuk nem tudom, hogy mennyire jo otlet Javat meg C-t parhuzamosan tanulni, mert annyira szogesen eltero nyelvek.
-
dabadab
titán
Mondjuk abszolut nem ertem, hogy a scanf() miert ilyen nagy liebling a C hazikat felado tanarok kozott - csak a nyug van vele, amugy tok felesleges, nem tanit igazan semmilyen koncepciot meg a valos eletben sem hasznalja a kutya sem. Akkor mar inkabb hasznalnak az argc-t meg az argv-t, ha mar valamit.
-
dabadab
titán
válasz
bandi0000 #3560 üzenetére
Miert egyre inicializalod az x-et? A tmb-ben meg karaktereket nezel, nem szamokat, ezert az egyenloseg jobb oldalar nem 1, hanem '1' kell (ami ASCII eseten egyebkent 49).
x=0;
for ( int c=0 ; tmb(c) != 0 ; c++ )
{
x <<= 1;
if ( tmb(c) == '1' ) x|=1;
}Ja, meg azt azert vegyuk eszre, hogy a tizes szamrendszerbe valo konvertalast az printf()-re biztad
-
dabadab
titán
válasz
Jester01 #2509 üzenetére
"Mivel semmi garancia nincs cast esetén, ezért ez semmivel sem jobb mintha az argumentum típusa egyszerűen void* lenne"
De, annyival azért jobb, hogy a függvény deklarációjából látszik, hogy ott valamiféle sockaddr struktúrát vár: ne felejtsd el, hogy a kódot nem csak a fordítóprogram, hanem a programozó is olvassa
-
dabadab
titán
"Egyébként nem úgy volt, hogy stacken tömböt csak fix méretben lehet létrehozni?"
Én nem tudok ilyenről és nekem ez teljesen jól működik:
#include <stdio.h>
void f(int size)
{
int x[size];
printf("%d\n",sizeof(x));
}
int main()
{
int c;
for ( c = 1 ; c < 10 ; c++ ) f(c);
return 0;
}./x
4
8
12
16
20
24
28
32
36szerk: látom, neked volt lelkierőd elolvasni a dokumentációt
-
dabadab
titán
válasz
Sk8erPeter #1454 üzenetére
"miért használsz mindenhol exit(0)-t?"
Mert kezdő
(Mondjuk a voidra definiált main()-re azért sikoltoznia kellene a fordítónak.)
Az exit() használata tulajdonképpen ugyanannyira problémás, mint a goto, ugyanazon okok miatt. -
dabadab
titán
válasz
Sk8erPeter #1447 üzenetére
A goto azert nem jo, mert tonkrevagja a program strukturajat, ami nehezebbe teszi a hibakeresest, a kod karbantarsat es megerteset is.
Azt mondjuk nem art nem elfelejteni, hogy Dijsktra '68-ban irta "Go To Statement Considered Harmful" cimmel megjelent levelet, amikor a strukturalt programozas meg nem volt igazan mainstream es teljesen hetkoznapi volt a spagettikod, amiben gotoval ugraltak ossze-vissza. Bizonyos helyzetekben azon a goto hasznos lehet, mert eppen pont az adja a leghatekonyabb vagy a legattekinthetobb kodot - annak idejen a Kandon is belefutottam abba, hogy gyakorlaton instantegyes volt a goto, eloadason meg a quicksortbol egy gotos verziot prezentalt a tanar, mert az volt a legegyszerubb.
Mindent osszefoglalva, a goto elleni liheges mara nagyreszt okafogyotta valt (ma mar senki nem hasznalja ugy, ahogy a hatvanas evekben), az ellene valo horges mogott pedig ritkan talalni ertelmes okokat. -
dabadab
titán
válasz
Fire/SOUL/CD #541 üzenetére
Egyszeruen stdinen be kell adni a programnak. Semmi ellenorzes nincs arra nezve, hogy nem jon be 255-nel tobb karakter, siman felul lehet irni az egesz stacket.
-
dabadab
titán
-
dabadab
titán
A main() az definicio szerint int-et ad vissza, ez eppen olyan resze a C specifikacionak, mint az, hogy az utasitasok vegere pontosvesszo kell.
Tortenelmileg onnan ered a dolog, hogy UNIX-on (de egyebkent ez jelenleg is igy van gyak. minden OS-nel, amivel talalkozhatsz) a programoknak van egy u.n. visszateresi erteke, ami egy egyszeru integer. Ennek GUI-s, interaktiv programoknal tul sok szerepe nincs, viszont olyan esetekben, amikor pl. scriptbol hiv meg az ember programokat, nagyon hasznos: ugyanis ezt szokas annak jelzesere hasznalni, hogy a program jol futott-e le v tortent vmi hiba. A konvencio az, hogy ha nincs gond, akkor a visszateresi ertek 0, ha pedig van, akkor nem nulla (a konkret ertekek es jelenteseik program-specifikusak mar).
Egyszeruen osszefoglalva: ha a programod szepen lefut, akkor egy "return 0" kell, ha meg vmi hiba miatt szakad meg a futasa, akkor meg -1 (ezt szoktak altalanos "problema van" ertekkent hasznalni) legyen a main() altal visszaadott ertek.
Új hozzászólás Aktív témák
Hirdetés
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- SSD kibeszélő
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Hardcore café
- Samsung Galaxy Watch7 - kötelező kör
- Gamepad
- IGP nélküli processzorokkal készül az Intel és az AMD
- ASZTALI GÉP / ALKATRÉSZ beárazás
- Pokoli repetát hoz az új GeForce driver
- Gurulunk, WAZE?!
- AliExpress tapasztalatok
- További aktív témák...
- Intel Core Ultra 7 265 /// Bontatlan, Teljesen Új // Üzletből, Számlával és Garanciával
- Csere-Beszámítás! Ryzen 9 9950X Processzor!
- Újszerű Gamer Asztali PC Számítógép 2026-ig Garis ASUS H510M-K R2.0 i5 11400F RTX 4060 8GB Dobozába
- Samsung Galaxy Tab A8 (2021) , 3/32 GB,
- Samsung Galaxy S6 Lite (2022) , 4/64 GB ,Wi-fi
- Beszámítás! Oculus Rift virtuális valóság szemüveg garanciával hibátlan működéssel
- HP ProBook 430 G4 Pentium 4415U (bios jelszavas)
- Csere-Beszámítás!AMD Asztali számítógép PC Játékra! R5 5600/ RX 6700XT 12GB / 16GB DDR4 / 500GB SSD
- Apple iPhone 14 256GB/ 86% Akkuval / 12 hónap jótállással!
- Bomba ár! Lenovo X1 Yoga 2nd - i7-7G I 8GB I 256SSD I 14" WQHD I HDMI I W11 I CAM I Garancia!
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest