Új hozzászólás Aktív témák
-
alapz@j
tag
Értem, de azért azt tegyük hozzá, hogy az általa említett Javában is gyakran van szintaktikai változás verziók között - ha jól emlékszem, pl. az 1.5-től jött be a
for (String s : stringArray)
forma a korábban használtfor (int i ...) stringArray.get(i)
kiváltására és nem okozott ez törést senki életében. -
CPT.Pirk
Jómunkásember
2 nxp proci totál meghalt az LTO-s kód rátöltése után, újraprogramozni sem lehetett őket. Mondjuk ez lehet más körülmények összjátéka is.
Nuvoton procikon használjuk még, nekem van egy nagyobb projectem amit ha LTO-val fordítok akkor elő tud állni olyan állapot, amikor befagy a cucc, de nem minden fordításkor.
Volt, hogy nyomtam egy "clear"-t az IDE-ben, újrafordítottam ugyanazt a kódot az LTO-val, erre megjavult. Ma fordítottam a tegnapi kódot, tegnap délután nem fagyott, erre ma reggel meg igen. Kivettem az LTO-t, azóta nincs fagyás.Viszont az LTO-val fordított bootloaderben meg egyszer sem tapasztaltam hibát, igaz az csak 4k, nem pedig 80 mint a főprogram.
-
buherton
őstag
-
dabadab
titán
"APL(-szeru) nyelven neztem bazi hosszu, teljesen strukturalatlan kodokat - ott ugye nem jellemzoek a fuggvenyek, viszont az sem, hogy regesreg krealt ertekeket hasznalsz sokkal-sokkal kesobb; inkabb sok-sok egymas utan kovetkezo es egymasra epulo lepest irnak le."
Azert ott is joval olvashatobb es kovethetobb lesz a kod, ha ugy nez ki, hogy van egy fuggvenyed, hogy
do_something_complex()
{
do_something_simple();
do_something_even_simpler();
// ...
}es az egyes lepeseket kirakod sajat fuggvenybe. A fordito meg ugyis inline-olja a fuggvenyeket, szoval meg csak lassabb se lesz.
-
dabadab
titán
"Tehat vegulis az ok, amiert szet akarod szedni, az a konnyebb navigacio."
Nem csak a navigacio, hanem a fuggveny atlathatosaga is: ugyanis ilyen szerkezetnel siman elofordul, hogy olyan valtozokra hivatkoznak, aminek par szaz sorral korabban adtak valami erteket. (Ami IDE-kkel eddig talalkoztam, azok csak a komplett switchet tudtak osszehajtogatni, az egyes case agakat nem)
Bocs, de most tenyleg nagyon latszik, hogy soha az eletben nem kellett ilyenekkel szenvedned, azert nem gondolod ezt problemasnak
-
dabadab
titán
"bar sokan azt valljak, hogy egy fuggveny ne legyen hosszabb X sornal, de ez szerintem butasag"
Ezt csak azert mondod, mert meg nem kellett olyan fuggvenyeket kibogoznod, amikor tobb ezer sor hosszuak voltak, bennuk tobbszorosen egymasba agyazott switchekkel, ami azt eredmenyezi, hogy a "hol vagyok a kodban?" kerdesre a valaszt tobb perces scrollozgatas adja meg.
Igazabol ha egy fuggveny kezd hosszu lenni (mittomen, tobb, mint szaz soros), akkor erdemes eltoprengeni azon, hogy nem lenne-e erdemes megis szetszedni. Erre persze lehet az is a valasz, hogy "nem", de azert toprengeni erdemes.
-
peter9228
aktív tag
Hoppá, tényleg, itt nem úgy van. Bemásolom az enyémet inkább: [link]
A lényeg, hogy ez tökéletesen működik, ha a fájlban nincs hiba. Most nézem, nem száll el akkor sem ha valami gond van. Viszont azt akarom elérni, hogy ha a nem egyezik meg a magassag és a szelesseg az adatokkal, akkor írjon ki valami hibaüzenetet. (Tehát pl. az elején 10x10-es van, de az adat 100x100-as, vagy fordítva)
Szerk.: Hiányzik egy ; abból amit bemásoltam és van pár fölösleges változó, ezt nézzétek el.
-
Igen, koszi, a zarojelezesnel rontottam el, mert en a masik jelzest hasznaltam.
Valamiert ugy gondoltam ,hogy az if a te megoldasod szerint csak akkor engedi tovabb igen-el, ha mindegyik feltetel teljesul.
De akkor ezek szerint nem(#5119) emvy
Valahonnan erre emlekeztem, de ezt is elfogadhatta volna, ha rendesen zarojelezek, nem?
Mert ez lenne a logikai vagy
De mar lehet, hogy belezavarodtam ,es azt se tudom, hogy hogyan allapitjuk meg harom oldalrol, hogy alkothatnak-e haromszogetSzerintem utobbi zavart be picit
-
Az indexelest nem vettem eszre, akkor a nem lefoglalt memoriateruletrol gondolom behalaszott valamit.
Pointereket leszedtem, atirtam azokat, amiket emlitettel, de meg igy se irja ki, ha nem lehet osszerakni az oldalakbol haromszoget.Azt is feldobta csoporttarsam, hogy hasznaljam az stdbool.h libet, de azzal nemhiszem ,hogy elorebb lennek, nem valtoztatna rajta.
-
Szóval ez kb arra jo, hogy atadhassak tomboket, a fuggveny pedig ha a parametereknel megadom int *-kent a tombot, akkor nem is kell semmi mast tennem, ezzel at is van adva a tomb es vegezhetek a fuggvennyel muveleteket rajta ugy, hogy nem kell foglalkoznom a visszaadással, mert a memoriacimen talalhato adatokkal dolgozik? Szoval nagyjabol ertem, de megis fura, hogy erre kulon kell valamit alkalmazni..
pl:
#include <stdio.h>
int darab (int * tomb, int meret);
int main()
{
int meret;
printf("Kerem az elemek szamat\n");
scanf("%d",&meret);
int elemek[meret];
printf("A 10-nel nagyobb elemek szama:%d",darab(elemek,meret));
return 0;
}
int darab (int * tomb, int meret)
{
int i;
int tobbmint=0;
for(i=0;i<meret;i++)
{
if(tomb[i]>10)
{
tobbmint+=1;
}
}
return tobbmint;
}[kihagytam az adatbevitel tobbi reszet, nem akartam megirni az egeszet a scanf-el, csak osszedobtam gyorsan, hogy lassam a dolgot.]
-
Igen, az angollal elevickelek.
Ott tartok, hogy az eloadas folian le van irva, hogy mi is ez pontosan, de ezzel nem igazan vagyok elorebb, mert nem ertem, hogy miert jo ez. Marmint mire hasznalhato, meg pontosan hogyan.. Szoval a gyakorlati alkalmazasat valamiert nem latom at.
A pointereken kivul a tombok fuggvenyeknek parameterkent valo atadasa sincs meg, de szerintem erre megoldast talalok majd valamelyik eloadas folian.
A strukturakkal egyelore meg nem foglalkoztam, eloszor ezeket szeretnem megerteni, megtanulni a hasznalatukat normalisan.
-
alpihun
senior tag
Nem a hosszával van a baj.
Csak nagyon csúf az az első ~20 sor és nem akartam magyarázkodásba kezdeni vele. Röviden annyi, hogy két sorban meg lehetne oldani azt vektorral, csak még nem tanultuk suliban, netről ellesni meg +1 hibalehetőség, megkérdezem hétfőn a tanárt (ezek érettségi feladatok és most kezdtem a tízet blabla kitérdekel), addig is megteszi ez a tömb, aminek rossz esetben is csak kevéssel van több eleme a szükségesnél.
Szóval ha működne a dolog, akkor kiírná a legtöbb egymás melletti egyforma számok számát a beolvasandó fájlból, aminek a tartalma:
32 45 56 34 34 34 34 55 11 11 11 11 11 11 12
plusz a részsorozatot, tehát:
6
11 11 11 11 11 11
Viszont nem ezt csinálja. Hol a hiba? -
buherton
őstag
Munkáltató teszteken nem ilyen jellegű kérdések szoktak lenni, hanem írjon algoritmust és a fentebb írt szivatós kérdések.
(#4822) axioma: Ha jelentkezőt kellene tesztelni ahhoz lenne pár ötletem és akkor saját kútfőből, saját tapasztalatom alapján állítanám össze. A probléma, hogy most más állítja össze és én a másik oldalon ülök.
Például az enum-os kérdésem tapasztalatból jön. Adott volt egy enum tömb, amit használtunk 8- és 32 bites architektúrán is. A probléma ott kezdődöt, amikor memset-el 0-tól különböző értékkel próbáltuk inicializálni a tömböt.
MOD: eszembe jutott még egy. Ugye ezzel // egy sort lehet kikommentezni, vagy mégsem?
-
buherton
őstag
Oké
.
a[i] = i++;
Mit eredményez?
char foo[3] = "bar";
Mi lesz a tömbben?
char *string = "foo bar";
Miért nem módosítható pl. az első elem? Egyáltalán lefordul? Ha igen/nem miért?
typedef struct foo *BAR;
struct x
{
char c;
BAR ptr;
};Lefordul?
struct x
{
char c;
int i;
} foo bar;Lefordul? Ha igen/nem miért?
Az enum teljesen mértékben portábilis?
Az elsőről már hallottam, de még soha nem használtam (nem kellett még). Bevallom derekasan a középsőről nem hallottam még. Az object (.o) fájl (és mellé kerülnek egyéb fájlok, mint pl. a nagyon hasznos .lst is) a következő lépcső a preprocesszált fájl után, ami gyakorlati értelembe vett fordtási szakasz. A header fájlok alapján kívülről elérhetők az egyesek függvények, tömbök, változók, és egyéb szimbólumok, amit majd később a linket fog összekötözgetni. A linker már teljesen független a nyelvtől. Szimbólumokat kötözgeti össze és közben persze figyelembe veszi az egyéb fordítónak szóló utasításokat, amivel mondjuk linkelés során tovább lehet optimalizálni, függvényeket elhelyezni a memóriatérben, összecsomagolja pl. a struktúrákat (__attribute__(packed)) stb... Kimenete a bináris/hex (Intel, Motorola, stb...), .map (memória térkép, meg lehet nézni hogy az egyes függvények és társaik hol találhatók), .elf (debuggoláshoz kell). Azt tudni kell, hogy a forítás során utasítani lehet hogy az egyes program blokkokat egy egységként kezelje, aminek az eredménye, hogy a szorosan összetartozó object fájlokat már a fordítás során összelinkelni .a-fájlá. Az optimalizálás hatékonyabb, hogy ha két körösen fordítunk, ahol az első körben csak kielemzi az optimalizálási lehetőséget, majd második körben további optimalizációs lehetőségeket keres, majd fordít. Bár a tudásom megkopott, mert jó ideje nem kellett ezzel foglalkoznom.
Ú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!
- DDR5 8/ 16/ 32GB 4800-5600MHz SODIMM laptop RAM, több db- számla, garancia
- RÉSZLETRE , Bankmentes , kamatmentes Asus Rog Zephyrus G16
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- Samsung Galaxy A12 64GB, Kártyafüggetlen, 1 Év Garanciával
- LG 27GR95UM - 27" MiniLED - UHD 4K - 160Hz 1ms - NVIDIA G-Sync - FreeSync Premium PRO - HDR 1000
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged