- btz: Internet fejlesztés országosan!
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- droidic: YouTube videók és playlistek letöltése GUI-alkalmazással
- sziku69: Fűzzük össze a szavakat :)
- bitpork: MOD Júni 28- Augusztus 2- szombat jelen állás szerint.
- ricshard444: Fényképező ? Telefon helyett
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Hold - SW Heritage - Auto üzemmód
- Magga: PLEX: multimédia az egész lakásban
- Luck Dragon: Asszociációs játék. :)
-
LOGOUT
Új hozzászólás Aktív témák
-
Jester01
veterán
válasz
Forest_roby #1999 üzenetére
callbacks.c:16: warning: passing arg 1 of `strlen' from incompatible pointer type
MOD: plusz az az strcpy( *alap, uj ); nem kell oda.
[Szerkesztve] -
Forest_roby
őstag
válasz
Forest_roby #1998 üzenetére
itt a progi: [link]
az src/callback.c a fontos.
kaptam mégegy hibaüzit:
*** glibc detected *** corrupted double-linked list: 0x0819cae0 ***
Félbeszakítva -
Forest_roby
őstag
válasz
Jester01 #1983 üzenetére
HI!
Nagyon jó, tuti, de van egy kis baj. A free(alap); miatt csak egyszer tud lefutni a fv. Vagy pontosabban ha többször akarom lefutattni a progit akkor ilyen hibával kilép:
*** glibc detected *** free(): invalid next size (fast): 0x0819e3b8 ***
vmi gáz van ott a free(alap) -al, de nem tudom biztosan, hogy mi.
ha érdekel belinkelhetem a progit. ( full egyszerű ) -
gaben
aktív tag
válasz
Forest_roby #1996 üzenetére
amúgy is a suliban linuxon kell...
-
Forest_roby
őstag
azért leírom, hogy tud. A könyv erősen linuxra íródott, azzal nem foglalkozik, hogy windowsban ezeket hogy kell megcsinálni/ mit kell rajta módosítani, hogyan kell fordítani stb....
ui.: egyébként gondolom a sulidban ugyis fognak ajánlani pár könyvet nektek.....
[Szerkesztve] -
gaben
aktív tag
válasz
Forest_roby #1994 üzenetére
Köszönöm a könyvet,sztem meg is veszem holnap...
-
gaben
aktív tag
válasz
Forest_roby #1991 üzenetére
CSak itt za egyetemen az Ansi C-ve lkezdünk alapból,ezért kéne valami jó kis könyv.
Akkor úgy kérdem,hogy kezdőnek miylen C könyvet ajánlanál?
(turbo pascal előélet már van) -
gaben
aktív tag
Sziasztok!
Mondjatok már nekem eg olyan könyvet,ami az ANSi C programozási nyelvvel foglalkozik,és jó is.
Melyiket érdemes megvenni? -
Jester01
veterán
válasz
Forest_roby #1982 üzenetére
Legegyszerűbb, ha az alap stringed dinamikusan foglalod és az összefűzésnél dupla pointert adsz be.
void osszefuzes(char** alap, const char* plus)
{
char* uj = ...
...
free(*alap);
*alap = uj;
}
Hívás példa:
char* alap = strdup(''vmi'');
osszefuzes(&alap, ''mas'');
printf(''%s\n'', alap);
osszefuzes(&alap, ''vege'');
printf(''%s\n'', alap);
free(alap); -
Forest_roby
őstag
Hi!
Nem akarom elrontani, ugyhogy inkább megkérdezlek titeket. ( a kapott válaszból talán tudok tanulni )
A a fv-hívás, visszatérési érték, pointerek ha keveredni, akkor már elég homályosak az ismereteim.....
szóval van egy fv-em benne egy char alap[] változóval és ehhez szeretnék hozzáfüzni több char változó tartalmát is, mivel ezt a műveletet elég sokszór kell megejteni erre kellene írni egy fv-t.
az alap fv olyan hogy:
..... () {
char alalp[] = ''ls'';
..... fv hívás
..... --||--
..... --||--
..... --||--
} -a pontok helyén általában hozzáfűznék vmi az alap változóhoz.
----------------------
a hozzáfűzés:
char a[] = ''vmi'';
char b[] = ''más'';
char *c = malloc( strlen(a) + strlen(b) + 1 );
strcpy( c, a );
strcat( c, b );
strcpy( a, c );
printf( ''%s\n\n'', a );
free( c );
végeredménybe az a változó valamimás lesz! Ezt kellene fv-be gyúrni és úgy hogy az alap változzon mindig...
vmi ilyesmire gondoltam:
char osszefuzes(char alap, char plus){
char a[] = alap;
char b[] = plus;
char *c = malloc( strlen(a) + strlen(b) + 1 );
strcpy( c, a );
strcat( c, b );
strcpy( a, c );
printf( ''%s\n\n'', a );
free( c );
} -csak nem tudom, hogy ez jó -e és, hogy mi a return(....) -> hogy az alap változzom.
Hú remélem érthető volt.
Előre is köszi a segítségeket!
mod:
és persze a cél az, hogy az alap fv -ből hívogatom ezt az összefűzés fv-t és az alap fv-ben lévő alalp[] változóhoz füzzön hozzá szöveget......
[Szerkesztve] -
Jester01
veterán
válasz
Forest_roby #1979 üzenetére
Jah, figyelmetlen voltam
Szóval:
GtkWidget *a_checkbutton = lookup_widget(GTK_WIDGET(button),
''a_checkbutton'');
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(a_checkbutton)) == TRUE) g_message(''TRUE\n'');
Persze az is jó amit én írtam, csak ez szebb. -
Jester01
veterán
válasz
Forest_roby #1977 üzenetére
a_checkbutton->active == TRUE
-
Forest_roby
őstag
Hi!
glade & c:
rossz:
callback.c
....
void
on_ok_button_clicked (GtkButton *button,
gpointer user_data)
{
GtkWidget *a_checkbutton = lookup_widget(GTK_WIDGET(button),
''a_checkbutton'');
gboolean gtk_toggle_button_get_active(GtkToggleButton *a_checkbutton)
{
if (a_checkbutton == TRUE) g_message(''TRUE\n'');
}
}
.....
azt szeretném, hogy ha a_checkbutton aktív, akkor írjon ki vmi szöveget, de nem megy. : (
légyszi segítsetek!
Előre is köszi a segítséget! -
Jester01
veterán
Linux alatt lehet. Win alatt is biztos van rá progi. Ha meg máshogy nem, akkor csinálj pl. titkosított rart (esetleg tömörítés nélkül) és írd rá úgy.
MOD: anno win2kra írtam egy drivert ami tudta olvasni a titkosított lemezeket amiket linux alatt gyártottam. Sajna xpvel nem ment, biztos megváltozott valami api. Illetve a titkosító progiból is készítettem parancssoros verziót ami elvileg win alatt is fut (mivel semmi extra nincs benne).
[Szerkesztve] -
nilrem
aktív tag
Hi,
Nem nagyon talaltam a hirtelen a kerdesemhez valo forumot.
Lehet-e titkositva CD-t irni, vagy netan konyvtarat valamilyen progival titkositani es ugy cd-re irni.
Bocs az OFF-ert. -
Angelo1
csendes tag
Sziasztok,
Lenne egy problemam, amire otleteket varok ( eleg surgos ).
Egy weboldalba szeretnek betenni egy mp3 lejatszot.
A lejatszo elegge egyszeru:
- egy lista ami megjeleni a dalok cimet
- ket gomb ''start mp3'', ''stop mp3''
- oldalbetolteskor elkezdodik a lejatszas
- ujabb oldalra valo navigalaskor a lejtaszas folyatodik
- vagy folytatja a legutobbi dallal
- vagy a kovetkezo dallal folytatja
Kezdo vagyok flashbol, es nem biztos hogy ez lenne a legjobb megoldas.
Kivancsi vagyok mas technologiakra amik ezt lehetove tudjak tenni, illetve teljes forraskodokra is (flash-be,javascript-be vagy valami masba) ami leheto teszik a lejatszast, es a lejatszas folytatasat oldalakon keresztul.
Udv,
Angelo -
Dreadlock
csendes tag
Hi!
Nincs valkinek meg a Borland c?Nekem nagyon nagy szükségem lenne rá, ugyanis valamilyen csoda folytán elveszett és nincs meg.Nagyon megköszönném, ha tudnátok segiteni!
Előre is köszi! -
SEK3
tag
Sziasztok!
Megtudnátok mondani, hogy hogyan tudom előcsalni a pontosvesszőt ( ; ) a programból? (a program: Dev C++ 4.9.9.2 -hun)
Amikor a forrásfájlt a programban írom, nem jegyzettömben, akkor nem akarja ;-t kiírni, pedig elég fontos!
Előre is köszike
(talán vissza kéne állítani angolra???)
Amikor a legelső példából exe-ét csináltam furcsáltam, hogy nem marad meg a szöveg futtatáskor, hanem bezár az ablak, De Parancssorból indítva minden OK
Rémesen rosszérzés valamihez nemérteni -
Jester01
veterán
válasz
Forest_roby #1965 üzenetére
Vagy eleve karakterenként olvasod (fgetc) vagy pedig a beolvasott soron végigmész karakterenként.
-
Forest_roby
őstag
HI!
Ezt a kis fv-t gyorsan összedobtam, hogy legyen mihez viszonyítani ( jól műxik ):
double flash( FILE *allomany ){
char sor[255];
int ertek[8];
int led =0;
int i = 0;
while( fgets(sor, 255, allomany)!=NULL ){
ertek[i] = (strtod(sor, NULL));
i++;
}/*while*/
led = ertek[0]*1+ertek[1]*2+ertek[2]*4+ertek[3]*8+ertek[4]*16+ertek[5]*32+ertek[6]*64+ertek[7]*128;
return(led);
}/*flash*/ /nyolc sort tettem a txt fileba/
Vmi hasonló fv. kellene csak ne soronként tegyen egy értéket a tömbbe, hanem karakterenként és soronként uj ciklust kezdjen a progi - persze a return értékkel nem kell foglalkozni, mert az modosul....../modosítom/.
Szóval, hogy lehet karakterekként beolvasni egy sort?
Előre is köszi a válaszokat!
[Szerkesztve] -
SEK3
tag
Sziasztok!
Köszi a válaszokat.....
.Hálám üldözni fog!.
Most, hogy tudom... akkor elkezdem tanulni a C-t... a Dev C vel akkor ugye kipróbálhatom mire jutottam... és akkor ugye azzal majd meglehet oldani az LPT port vezérlést - nagyszerű
már szereztem is egy eBook-ot (programozzunk C nyelven) - remélem ez jó lesz kezdésnek.
Akik fizikai munkát végeznek, azoknak a többségük nemérti, hogy mi lehet azon fárasztó, ha valaki a számítógépen ''pötyög'' - És azoknak a legrosszabb, akik fizikai munka mellett - szabadidőben ''pötyögnek'' - nem csak a test fárad, hanem az is ami benne van. -
Forest_roby
őstag
műxik, csak rendszergazda jog kell hozzá
-
emitter
őstag
válasz
Forest_roby #1960 üzenetére
-c Compile and assemble, but do not link
^-- ezt csinálja a -c
Szóval nincs ilyen fv, h outp().. akkor lehet, h az ncursesben ezt nem implementálták.
A libconio-val kéne próbálkozni
------
mod:[link]
sztem megpróbálkozhatnál ezzel
[Szerkesztve] -
emitter
őstag
válasz
Forest_roby #1958 üzenetére
ha hiányozna, kiabálna fordításkor..
_outp()-vel mit csinál? -
Forest_roby
őstag
szerintem ez az outp() fv hiányzik, ezt hogy tudom feltelepíteni?
emitter :
jahh...
gcc -c Bcount.c -o lpt.out
nem is tudom, hogy honnan vettem ezt a -c -t. kivettem és ugy fordítottam és akkor kiírta, hogy:
gcc Bcount.c
/tmp/ccqJCFWG.o: In function `main'count.c
.text+0x34): undefined reference to `outp'
collect2: ld returned 1 exit status
[Szerkesztve] -
emitter
őstag
válasz
Forest_roby #1956 üzenetére
mi az az ltp.out?? ez a bináris lett a forrásodból?
nemtom, esetleg megpróbálhatsz egy hívást strace-szel
[Szerkesztve] -
Forest_roby
őstag
bakker, már nem tudtam mod -olni!
feltelepítettem ezt:
sudo apt-get install libncurses5-dev
és most le is fordult a progi, de a végeredmény nem változott:
forest@forest-gep:~/Desktop/c/devc++/bcount$ ./lpt.out
bash: ./lpt.out: Hozzáférés megtagadva
forest@forest-gep:~/Desktop/c/devc++/bcount$ chmod 777 lpt.out
forest@forest-gep:~/Desktop/c/devc++/bcount$ ./lpt.out
bash: ./lpt.out: cannot execute binary file -
Forest_roby
őstag
okay, megpróbálom!
-
emitter
őstag
válasz
Forest_roby #1951 üzenetére
sudo apt-get install libncurses5
és persze nem conio.h-t húzolbe, hanem ncurses.h-t
---
szerk: de az is lehet, h a fv. neve nem _outp, hanem simán outp
talán segít: [link]
[Szerkesztve] -
8472
aktív tag
válasz
Forest_roby #1951 üzenetére
Van valami ncurses nevű külön csomag. Ha jól tudom, linuxon azt használják a conio.h helyett.
-
Forest_roby
őstag
válasz
Forest_roby #1950 üzenetére
lehet, hogy hülyeséget csináltam.
feltelepítettem ezt: [link]
és most szépen le is fordítja a gép a progit csak épp nem tudom elindítani.
hozzáférés megtagadva
erre: chmod 777 progi
válasz: bash: ./progi: cannot execute binary file
nem megy..... -
Forest_roby
őstag
válasz
paramparya #1949 üzenetére
igen azt látom, de mi a megoldás?
hiányzik ez a conio.h vagy rosszul fordítottam le?
ha hiányzik, hogy tudom beszerezni? ha rosszul fordítottam le, hogy tudom helyesen lefordítani?
.....
....
...
..
. -
paramparya
őstag
válasz
Forest_roby #1948 üzenetére
Ott van a hibaüzenetben, nincs meg a conio.h library...
-
Forest_roby
őstag
hi!
Lényegében winre írták az egészet, de van benne egy devc++ al írt c progi, amit talán le tudok fordítani. A baj az, hogy include olva van benne egy conio.h fej-álomány és nem tudom, hogy hogyan fordítsam le linuxra. Lehet, hogyhiányzik vmi a gépről. nem tom.
A progi:
/*********************************************
binary counter : DEV C++ 4.9.4.1 version
This will count from 0 to 255
This assumes your printer port address
is 0x378 and also pauses for 250 mS between
every count
**********************************************/
#include <stdio.h>
#include <conio.h> /*required for _outp*/
int main()
{
int x;
for(x = 0;x<=255;x++)
{
_outp(0x378,x);
sleep(250);
}
return 0;
}
Hogy tudom én ezt lefordítani?
gcc -c Bcount.c -o Bcount.o parancsra ezt írta ki:
Bcount.c:9:42: error: conio.h: Nincs ilyen fájl vagy könyvtár
Bcount.c:20: error: stray ‘\26’ in program -
cucka
addikt
válasz
Forest_roby #1945 üzenetére
például [link]
-
cucka
addikt
előbb megtanulod az alapokat. ehhez ajánlott nyelv mondjuk a c, később c++. utána lehet foglalkozni gui-s programokkal, többszálúsággal, stb.
tanulásra kiváló ingyenes fejlesztőkörnyezet a dev c++. ha jól emlékszem, szintén ingyenes a visual studio express edition, de inkább ne azzal kezdd, túl sok mindent tud.
-
Forest_roby
őstag
Hi!
LPT port programozásához tudtok vmi infót adni c -nyelven. Ha nagyon nincs semmi akkor assembly is jó lesz, ugy is be lehet illeszteni c-nyelvbe. Linux op-ről lenne szó, már ha ez számít.
Előre is köszi a válaszokat! csá -
SEK3
tag
Sziasztok!
Lenne pár kérdésem...
...Szóval szeretnék megtanulni programozni
Ami nekem annyit tesz, hogy jelenleg egy programnyelvet sem ismerek, még nincs tapasztalatom e téren. (csak html, de az semmi) és szeretném, ha ez nem így lenne.
...Tehát a kérdésem az, hogy melyik programnyelvet válasszam?
Nekem fontos az, hogy legyenek magyarnyelvű leírások az alapoktól kezdve (mert ugye, ha nem suliban tanulom, nincs ki elmagyarázza). Szintén fontos, hogy lehessen olyan programot készíteni vele, ami képes a portokat (ezalatt az LPT-re és az USB-re gondolok) kezelni. És persze windows-os felületet létrehozni (ezalatt meg aztértem, hogy ne olyan DOS-os csúnyaság legyen, hanam windows-os randaság). Meg az se árt, ha képes kezelni ezt a modern technikát a 64bites rendszert, meg a multiCPU -kat
Nem tudom mennyire érthetőek az elképzeléseim
Az interneten böngészve úgy vettem észre, hogy ami nekem kell, az a C, majd a továbbfejlesztett változatai.
Ja és még arra is kívánncsi lennék, hogy milyen progit használjak?
valami olyan kéne ami ingyenes, de ha nem az sem baj, csak ne legyen olyan eszméletlen drága, amilyenek ezek a progik szoktak lenni (ezek a progik alatt ezeket értem: Macromedia studio8, Maya7, Corel akármelyik, office...) de persz más módját is ismerem
a beszerzésnek, de az.....! -
Balux
tag
na köszönöm szépen az eljárás müködni fog de még buzerálnom kell....
mindenesetre már sikerült kiiratnom rendesen az adatsort, csak még nem vagyok
benne biztos hogy a szimuláció maga rendesen lefut e....
most első nekifutásra az oszlopokat <<'' '' -el választottam el
tehát szóközöket raktam be, de akkor lesznek szép oszlopok ha
tab-al választom el nem?
azt hogy is kell? -
bdav
őstag
válasz
Forest_roby #1939 üzenetére
az fentebb van. amit most írtam le az a 2D tömb lefoglalása volt C-ben. (c++ban a new használatos). utána már tomb[][] - vel lehet rá hivatkozni; tomb[a][ b] helyettesíthető pointerekkel, ha jól emléxem akkor így: ((tomb+a)*+b)* (bár ezt sztem senki sem használja, nem is biztos hogy így korrekt teljesen, de a [] kikerülhető az fix)
-
bdav
őstag
válasz
Forest_roby #1937 üzenetére
hogyne lenne.
int** tomb=malloc(sizeof(int*), maxsorok);
for(i=0; i<maxsorok; i++)
{
tomb[ i ]=malloc(sizeof(int), maxoszlopok);
}
[Szerkesztve] -
bdav
őstag
válasz
Forest_roby #1935 üzenetére
hát ciklusmagban még eszembe se jutott, ha erre gondolsz: for(...) { int i...} sztem ez így nem lesz jó. Ciklus deklarációban lehet a C++-ban: for(int i=...;...){} de fordítófüggő hogy a változó élettartama mennyi lesz, szóvalezzel óvatosan (ugyis beugat ha nem jó
)
-
Forest_roby
őstag
Hi!
Lehet változót létrehozni ciklusban? Minden ciklusban egy új változót?
-= C nyelv =- -
bdav
őstag
óbasszus nem [code] a kód tag. ááá na 2. nekifutás:
Legyen egy tömböd:
tomb[sorok][oszlopok]
ezt fel tudod tölteni két ciklussal:
for(oszlopok=0; oszlopok<maxoszlopok; oszlopok++) //ez léptet a köv. oszlopra
for(sorok=0; sorok<maxsorok; sorok++) // ez egy oszlop adatait szedi össze
tomb[sorok][oszlopok]= //ide elvégzed a müveletet
kiíráskor az kell hogy egy sor kiírásakor minden oszlop első eleme szerepeljen
for(sorok=0; sorok<maxsorok; sorok++)
{
for(oszlopok=0; oszlopok<maxoszlopok; oszlopok++)
file<<tomb[sorok][oszlopok]<<'\t'; //kiirkálod az oszlopok első elemeit
file<<'\n'; //majd sor vége, köv. körben jönnek a 2. elemek.
} -
bdav
őstag
hát éppen van lehetőség egy nyitott filestreamban hogy mozgasd az aktuális írási pozíciót (seegk és seekp) de nem ismerem ezt a lehetőséget jól, most találtam a googleval. nahh ha ez megvan és ismered a fájl sorainak hosszát, akkor sztem el tudsz navigálni a sorzáró \n (vagy \n\r) elé és oda beírhatsz, így kvázi új oszlopod lesz. (nézz utána ennek még, próbálgasd előtte)
de nekem szimpatikusabb lenne tömbben gyűjteni a kiírandó adatokat és csak a szim. végén létrehozni a fájlt
mod most látom h. jo lenne tömbbel is csak az implementácio hiányzik. nahh akkor:
Legyen egy tömböd:
[code] tomb[sorok][oszlopok] [/code]
ezt fel tudod tölteni két ciklussal:
[code]
for(oszlopok=0; oszlopok<maxoszlopok; oszlopok++) //ez léptet a köv. oszlopra
for(sorok=0; sorok<maxsorok; sorok++) // ez egy oszlop adatait szedi össze
tomb[sorok][oszlopok]= //ide elvégzed a müveletet
[/code]
kiíráskor az kell hogy egy sor kiírásakor minden oszlop első eleme szerepeljen
[code]
for(sorok=0; sorok<maxsorok; sorok++)
{
for(oszlopok=0; oszlopok<maxoszlopok; oszlopok++)
file<<tomb[sorok][oszlopok]<<'\t'; //kiirkálod az oszlopok első elemeit
file<<'\n'; //majd sor vége, köv. körben jönnek a 2. elemek.
}
[/code]
a lényeg h. a két tömbbejárásnál más legyen a tömbindexeken végigfutó ciklusok sorendje.
[Szerkesztve] -
Forest_roby
őstag
nem -ez így mégse jó -én nem erre gondoltam.
Azt kell csinálni, hogy egy oszlopba kiiratni az egésszet és a ciklusok között vmi elválasztót kiiratni - így tudod szeparálni a különböző tömböket. Ha ez kész egy másik progival megcsinálni a végső text filet. sztem máshogy nem nagyon megy - persze lehet memóriából is csinálni ez egészet.
1
2
3
4
5
6
-
7
8
9
10
11
12
-
...
és ebből:
1___7___x___y
2___8___z
3___9
.
.
.
.
.
mod: NEM! tömbökbe kellene menteni az oszlopok tartalmát, abbol meg pofon egyszerű lenne a mátrixot megcsinálni! A kérdés persze az hogy hány tömb kellene ehhez?
[Szerkesztve] -
Balux
tag
válasz
Drótszamár #1929 üzenetére
Oszloponként lemented, és a végén összegyúrod? Vagy az nem járható út ?
ez jo lenne végül is ha még a c++ progi megcsinálja nekem de nem nagyon tom hogy kéne
ha van ötleted azt szivesen venném, ui. 2 hete programozok összesen
az a lényeg hogy az ábrázoló program (gnuplot) azt szereti ha egy oszlopban vannak az adatok
így egymás után ábrázolva a fent elmlített n*N es mátrix oszlopait kész a szimuláció!
(ami most látom (n+1)*(N+1) -es)
ábrázolni egyoszlopos adatsorból már eddig is sikerült de nagyon nyakatekerten....
[Szerkesztve] -
Balux
tag
válasz
Forest_roby #1928 üzenetére
tehát plö
ofstream data(''kdv.txt''); //ebbe mennek az adatok!
for(j=0;j<N;j++) //ez az időben-i léptetés
for( i=0;i<n;i++) //ez a térbeli léptetés (1D-ban)
{
//ide jön egy csomo minden ami a kezdőfeltételek és a
//az időben ezelötti állapotból u minden elemének uj értéket ad!
data<<u<<endl;
ezt akkor hogy kéne módosítani hogy miután u-t kiiratom egymás alá
az időben következő (j++ ciklus) u adathalmazt az előző mellé írja ki??
ugye a végén egy n*N es 'mátrixot' kapnék!!
legalábbis szeretnék
köszi elöre is! -
Drótszamár
őstag
Oszloponként lemented, és a végén összegyúrod? Vagy az nem járható út ?
Esetleg egy jó nagy tömmbe eltárolni az egészet, és a végén kiírni fájlba?
Az a baj, hogy a textfile-ba amiket látsz oszlopokat, azok nem oszlopok, hanem érték,sortörés,érték,sortörés.... (tehát egy sima szekvencia. Az hogy a képernyőn hogy látod az most mellékes)
Neked ide kéne minden érték után beszúrni a következőt (esetleg valami elválasztó a kettő közé). Ez eléggé macerás. Mindeképpen valami memóriában összefésülős algoritmusban érdemes gondolkodni. Akár úgy, hogy egész fájl beolvas, a memóriában összefuttatod a 2 adatsort, majd újra kiírod. -
Balux
tag
segiccsetek légyszi!!!
c++-ban irt szimulációkat szeretnék ényelmesen megjeleníteni...a lényeg
van egy kimenő adatsorom- pár ezer szám- ezeket szeretném ábrázolni
gnuplottal, mozgókép ugy lesz belőle hogy a fő cilkus minden egyes
végrehajtásánál kiiratom egy txt-fileba az adatokat, majd gnuplottal
ábrázolom....
sokat szivtam már vele ezért szeretném a dolgot leegyszerüsíteni:
úgy szeretnék fileba kimenteni egy adatsort hogy a következő ciklus
végén a következő 2000 számot a következő oszlopba tegye, sajnos ilyet nem
tudok csinálni, csak az egész adatssort (pl 100 db ilyen oszlopot egymás alá tenni
a txt-fileba) egymás után kiiratni!!
van erre vmi épkézláb megoldás?? -
Miracle
senior tag
válasz
Lortech #1925 üzenetére
Garbage collector meglepően hatékonyan végzi a dolgát, nyilván egy jó programozó manuálisan hatékonyabban meg tudja oldani, csak sok felesleges meló és komoly odafigyelés kell hozzá, sokkal nagyobb a hibalehetőség. Szóval a GB jóó.
A modern, generacios elvu GCok, amiket a java es .net is hasznal hetszeres memoriaigeny mellett tudjak azt a sebesseget hozni, mint ugyan az a kod manualis felszabaditas hasznalataval. Ez nyilvan fugg az objektumok szamatol es meretetol, es nem problema egy word vagy egy explorer eseteben, ezek igy sem esznek sokat, de az az alkalmazas amin most dolgozok egy egyszerubb kiepiteseben megzabal 8 gigat es ez csak feljebb megy. nagyjabol 15 eve az eppen aktualis esszeru hataron mozog a memoriaigeny, nalunk meg ketszeres memoriaigeny is keresztbetenne, de akkor mar eleg komoly overheadre kell szamolni a processzorigeny teruleten is. a GC megkerdojelezhetetlen elonyokkel is rendelkezik, eppen ezert keszitettek olyanra a c++ nyelvet, hogy magaban a programunkBAN, egy libraryban, c++ nyelvEN lehessen garbage collectort imlementalni, a fordito legkisebb buheralasa nelkul, tisztan a nyelvben(en eleg gyakran hasznalok GCt, igaz nem az elobb emlitett projektben), ugy, hogy nem kotelezo minden objektumot a GC felugyeletere bizni, ha valamirol pontosan tudod meddig kell elnie akkor nem csinalja az overheadet. De azzal, hogy a GC hasznalata kotelezove valt beledrotoztak a nyelvbe egy overheadet, es ha ki akarom kerulni a programom szerkezetet kell modositani (keves objektum, sok tomb adattaggal) ami szerintem nem szerencses.
Arra gondoltam, hogy a végén ugyanaz a kód fog lefutni, attól függetlenül, hogy c#-ban írtad eredetileg, vagy c++-ban. Persze ez a.net (CLS, CLR) sajátossága. Mindegy, ezt így kár kiragadni, a contextusban volt értelme.
Hat igen, ha c++t forditanank .NETre, akkor bizony nem kapnank gyorsabb kodot, mint c# eseteben, de a c++t ugy terveztek, hogy ne legyen szukseg egy .NETre a futtatashoz, a c#ot pedig ugy, hogy szukseg lett ra.
Az utolsó előtti bekezdéseddel értek egyet legkevésbé, én nem gondolom, hogy a c#-ban ennyire alárendelték a minőséget és a teljesítményt az elsajátíthatóságnak és a ''fejleszthetőség sebességének''
nem a minoseg rossz, hanem a koncepcio joval egyszerubb, es keevsebb benne a feature, ezt konnyebben meg lehet tanulni, de gyengebb eszkozt kapsz. Nem a minoseggel van a baj, hanem a tudassal. Azaz azzal sincs baj, pontosan azt a szintet talaltak el amit akartak: a javanal okosabb, de megis egyszeru en tanulhato nyelv. Az elobbi hasonlatra visszaterve az eldobhato muanyag ollo is jol mukodik 1-2 evig, teljesen tokeletes, de 60 ev mulva aligha fogsz vele akarmit elvagni. Nem a minoseg gyenge, hanem az eszkoz maga gyengebb, kisebb celokat celoz meg mint a ,,nagymamam acelolloja'' amit meg en is hasznaltam es most is mukodik tokeletesen
és a c++-t sem tartom ebben etalonnak
etalon nincs, csak bizonyos celokra valamely nyelv jobban megfelel mint a tobbi.
mission critical rendszerekhez ada, vagy funkcionalis nyelvek imho, kis egyszeru appokhoz java/c#/perl/python, igazi izom applikaciokhoz C/C++, numerikus algoritmusokhoz fortran, stb. persze ez nem ultimate elosztas, csak szereny velemenyem.
c/c++/c# guru és mégis a c#-ot forszírozza, pedig a többszálú illetve párhuzamos programozás a szakterülete, erősen a hatékonyságra és teljesítményre kihegyezve.
Igazabol a C es a C++ memoriamodellje alkalmatlan igazan jo tobbszalu programok keszitesere, mar ahhoz is fordito-oldali segitsegre van szukseg, hogy egyaltalan lehessen optimalizalt kodot kesziteni tobbszalu progikhoz. Ezzel szemben a c# es a java nyelvi elemekkel tamogatja a tobbszalusagot, es a .NET 1.1 illetve a java 1.3 mar viszonylag kifejlett es hasznalhato memoriamodellt ad a juzer kezebe amivel lehet masszivan tobbszalu progikat irni multiprocesszoros rendszereken is. (1.1es .net es 1.4as java meg el-el halt igazi MPU rendszereken)
/Na meg a 4gl nyelvek./
na ezeket tartom kamunak, 4. generacios nyelvek nincsenek, ezek technologiak es nem nyelvek, sajnalom, h terjed ez a fogalom... ez is csak marketing, es elegge szar h szakman belul is el lehet adni
[Szerkesztve] -
Lortech
addikt
válasz
Miracle #1924 üzenetére
Előszöris köszi, hogy leírtad a véleményed.
Garbage collector meglepően hatékonyan végzi a dolgát, nyilván egy jó programozó manuálisan hatékonyabban meg tudja oldani, csak sok felesleges meló és komoly odafigyelés kell hozzá, sokkal nagyobb a hibalehetőség. Szóval a GB jóó.
Paraméterátadás szerintem pont megfelelően van megoldva, eléggé kézzel foghatónak, egyszerűnek, beszédesnek tartom. Az a 4 igazából csak 2, mégha máshogy is hívod.
Ha .net-ből indulunk ki, a c++ semmivel sem gyorsabb.
most igy hirtelen nem tudom, mire gondolsz. ha a JIT compilerekre
Arra gondoltam, hogy a végén ugyanaz a kód fog lefutni, attól függetlenül, hogy c#-ban írtad eredetileg, vagy c++-ban. Persze ez a.net (CLS, CLR) sajátossága. Mindegy, ezt így kár kiragadni, a contextusban volt értelme.
Az utolsó előtti bekezdéseddel értek egyet legkevésbé, én nem gondolom, hogy a c#-ban ennyire alárendelték a minőséget és a teljesítményt az elsajátíthatóságnak és a ''fejleszthetőség sebességének'', és a c++-t sem tartom ebben etalonnak, de valódi érvekhez egyelőre kevés vagyok, a prog.tanárommal biztosan jól eldiskurálnátok erről, ő c/c++/c# guru és mégis a c#-ot forszírozza, pedig a többszálú illetve párhuzamos programozás a szakterülete, erősen a hatékonyságra és teljesítményre kihegyezve. /Na meg a 4gl nyelvek./
-
Miracle
senior tag
válasz
Lortech #1921 üzenetére
Mitől primitívebb? Vagy a jóval egyszerűbbet értetted alatta?
A genericek jatekszernek tekinthetok a c++ templatekhez viszonyitva, es ez a kulonbseg csak noni fog ahogy 2-4 even belul bekerulnek a c++ szabvanyba a conceptek.
Szinten hianyzik nekem a tobbszoros oroklodes lehetosege. A tobbszoros oroklodes olyan, mint az ejtoernyo. Lehet, hogy egesz eletedben nem lesz ra szukseged. De ha egyszer igen, akkor ku***ra
Ezenkivul a beepitett es kotelezoen hasznalt garbage collector vagy a memoriat, vagy a processzort zabalja meg, en egyiket sem szeretem.
Én inkább letisztultabbnak és logikusabbnak mondanám.
Na nezzukcsak hanyfele parameteratadasi mod is van c#ban?
ugye van egy a beepitett value tipusoknak es altalad keszitett value tipusoknak.
aztan van ezeknek egy referencia szerinti atvetele
vagy egy objektumreferencia szerinti
es van egy amit meg nem hasznaltam, az a tomb-referencia szerinti.
ez 4. es hanyfele van c++ban?
1. inicializalas szerinti. a parameteratadas ugyan ugy mukodik, mint a valtozo-inicializacio. Semmi tobbet nem tud, viszont onnan mindent.
. Mai igényeknek sokkal inkább megfelelőbbnek.
Ezt alairom, mint mondtam is, sokmindenre jo, de ettol nem lesz jobbEgy fiat sem lesz jobb auto, mint egy ferrari csak mert folduton is tudsz vele menni anelkul h szetvagnad a padlolemezet
. Objektum orientált nyelv, az egész arra van felépítve, nem csak támogatja, mint a c++
a C++ multiparadigmas nyelv, tamogatja strukturalt, objektumorientalt, deklarativ, generativ programozast is, illetve kis erolkodessel funkcionalis mukodes nyomait is eszre lehet venni. Ezek kozul ma az objektumorientaltsag a legnepszerubb, de az, hogy egy nyelv nem is tamogat mast nem igazan feature az en szememben.
Úgy tűnik nekem, kicsit lenézed ezt a nyelvet, gondolom a vs.net alapján, azzal szokták azonosítani, pedig a nyelv önmagában nem határozza meg a teljesítményt.
Nem nezem le, egy egyszerubb nyelvrol van szo, kevesebb feature-el, ennyi. VS.net-hez meg nem volt szerencsem, es nem is lesz. es a nyelv valoban nem hatarozza meg a teljesitmenyt, de bizonyos korlatokat ad az elerheto teljesitmenyre, amely keretek a c# eseteben joval szukebbek, mint c++ eseteben.
Ha .net-ből indulunk ki, a c++ semmivel sem gyorsabb.
most igy hirtelen nem tudom, mire gondolsz. ha a JIT compilerekre, akkor igen, egy JIT compiler nehany perc alatt egy ciklusokbol allo kodreszletet ki tud optimalizalni annyira, mint azt egy c++ fordito tenne ugyan azon algoritmus eseten gyenge optimalizacioval, de eros optimalizaciot, autoparallelizaciot, SIMD forditast figyelembe veve baromira eselyetelen barmilyen VM-en futo nyelv.
Egy jó tanárral c#-pal is betekintést kaphatunk a színfalak mögé, más kérdés, hogy valóban sokkal inkább elrejti a nyelv a programozók elöl ezeket, mert nem kell használni.
valoban nem kell, ennek meg is van az ara (hatkonysag)
Egyébként sok egyetemen és főiskolán egyre inkább c#-ot használnak c/c++ helyett.
es en ezt teljes mertekben tamogatom, ahhoz, hogy valaki megtanuljon c++ul evekre van szukseg gyakorlattal, es altalaban semmi szukseg ra, altalanos alkalmazasokhoz a c# tokeletesen megfelel, es gyorsabban lehet vele haladni, mint ugyan azon modszereket alkalmazva c++al (habar egy igazi c++ programozo aki STL programozo is azert eleg sok esetben odaver egy c# programozonak, az STL egy brutalis szornyeteg, ha valaki megtanulja hasznalni hihetetlenul felgyorsitja a munka, csokkenti a hibak szamat, de valoban baromi nehez effektiven hasznlani)
Talán nem véletlenül.
valoban nem veletlenul, jo dolog az a c#. ugyan az a tendencia, mint a szep mives ablakkeretek helyett muanyagablakkeretet, az acelollo helyett eldobhato muanyagot, porcelantanyer helyett muanyagtanyert, a tegla helyett vasbeton, es meg lehetne sorolni, hogy a jobb minosegu es draga dolgokat szepen felvaltjak az rosszabb minosegi jellemzokkel rendelkezo, de olcsobb megoldasok. Ez megy vegbe a programozok koreben is, a bonyolult es nagyon eros nyelveket felvaltjak az egyszerubb, gyengebb, olcsobban megtanithato nyelvek, amelyeket tobb ember kepes megerteni es elsajatitani, es kevesebb ido alatt.
Es ez nem rossz, vagy jo, hanem ez van, ezt kell szeretni.
Szívesen látnék egy .nettől CLR-től teljesen független c# megvalósítást.
A GCC4-re valo valtas egyik motivalo tenyezoje volt, hogy alkalmassa tegyek a forditot stackmachine-re valo forditasra is(ilyen a P-code, a Java byte kod, illetve a CIL is), A java back-end fejlesztese eleg docogosen halad, ha halad eppen, nem tudom, hogy mi a projekt allapota, de ha egyszer elkeszul szerintem .NET-et is for tudni forditani, olyan brutalis a ,,veletlen'' hasonlosag a ket nyelv kozott(asm utasitasok 80%-anak van egy-az-egybeni megfeleloje a masik kornyezetben). Minden esetre egy ilyen backend biztosan frontenddel egyutt keszul majd, es akkor lehet majd forditani szep nativ kodot is elvileg a c# progikbol. De a c# ebben az esetben is igen komoly hendikeppel indul, ugyanis a c++ runtime nem ismeri az objektum fogalmat, ezert nincs benne introspekcio, a c# viszont igen, es muszaly is neki, ez igen komoly hatranyt jelent objektumorientalt kod futtatasa eseten. Termeszetesen ciklusokra, es hasonlokra epulo kod ez esetben ekvivalens hatekonysaggal lesz fordithato, mint c++ eseteben.
[Szerkesztve] -
Lortech
addikt
válasz
Bazsa74 #1922 üzenetére
Ilyen ''progi'' nincsen. Változtass mindenütt jelszót. Nézesd meg a géped egy hozzáértővel, windows updatetel a biztonsági frissítéseket rakd fel. Spyware ellenőrzést csinálj pl adware-rel. A felhasználó(d)nak, ami gondolom rendszergazda jogokkal fut XP-n, adj jelszót. Rakj fel egy tűzfalat, ha nem lenne.
Ez a téma itt nagyon offtopik.
Ha vannak, további kérdéseid például ide tedd fel: [link]
[Szerkesztve] -
Bazsa74
tag
Sziasztok. Valaki segitene? Segitség kellene. Valaki állandóan bejelentkezik a a Skypén a nevemmel, és a kedvesemet gyalázza a nevemben. honlapokról küldözget neki sms-eket. Törli az üzijeimet.
Van valami progi amivel meg tudom nézni az Ip cimét, vagy valami azonositoját?
Köszi -
Lortech
addikt
válasz
Miracle #1917 üzenetére
Mitől primitívebb? Vagy a jóval egyszerűbbet értetted alatta?
Én inkább letisztultabbnak és logikusabbnak mondanám. Mai igényeknek sokkal inkább megfelelőbbnek. Objektum orientált nyelv, az egész arra van felépítve, nem csak támogatja, mint a c++.
kliketiklikk guikeszitesre meg hasonlo nem performance-igenyes kodokhoz tokeletesen alkalmas, megis a C/C++ parost ajanlom kezdesnek, mert igy lesz valami kozod ahhoz is, hogy mi toretnik a ,,fuggony mogott''
Úgy tűnik nekem, kicsit lenézed ezt a nyelvet, gondolom a vs.net alapján, azzal szokták azonosítani, pedig a nyelv önmagában nem határozza meg a teljesítményt. Ha .net-ből indulunk ki, a c++ semmivel sem gyorsabb. Persze ez így nem korrekt, de akkor az idézet sem. Tudod, mire gondolok.
Egy jó tanárral c#-pal is betekintést kaphatunk a színfalak mögé, más kérdés, hogy valóban sokkal inkább elrejti a nyelv a programozók elöl ezeket, mert nem kell használni. Egyébként sok egyetemen és főiskolán egyre inkább c#-ot használnak c/c++ helyett. Talán nem véletlenül. Ebbe mondjuk biztosan belejátszik az ms nyomulása is, ingyen vs.net express, campusban ingyen vs, kényelmes..
Szívesen látnék egy .nettől CLR-től teljesen független c# megvalósítást.
[Szerkesztve] -
sonar
addikt
Az osztály fogalmát vki eltudná magyarázni nekem érthetően?
-
Miracle
senior tag
a c# egy javahoz hasonlo dolog, joval magasabb szintu, es a c++hoz kepest joval primitivebb nyelv, joval egyszerubb, es igy nehezebb benne hibazni. kliketiklikk guikeszitesre meg hasonlo nem performance-igenyes kodokhoz tokeletesen alkalmas, megis a C/C++ parost ajanlom kezdesnek, mert igy lesz valami kozod ahhoz is, hogy mi toretnik a ,,fuggony mogott''
-
8472
aktív tag
Ha később C++ -szal is szeretnél foglalkozni, akkor szvsz inkább C-vel érdemes kezdeni, mivel a C++ -ban megmaradtak a C-s függvények/eljárások és a saját C-s kódodat is be lehet építeni a C++ kódba. Compilernek ott van pl a GCC, amihez van is egy Dev-C++ nevű IDE. Itt tudod állítani a compilert C és C++ mód között. Microsoftnak is van ingyenes fejlesztőkörnyezete (visual c++ express), de nem tudom, hogy ott lehet-e állítani C és C++ mód között.
-
8472
aktív tag
A C++, egy kiegészített C. A C++ -ban saját osztályokat, sablon osztályokat írhatsz, van öröklődés, kivételkezelés, szabványos algoritmusok, amikhez készíthetsz függvényobjektumokat, van STL (ami egy sor hasznos tárolót tartalmaz), és pár típus konverziós operátor. A C#-t nem ismerem , de amennyire tudom a Java-hoz hasonló nyelv.
-
sonar
addikt
Mi a nagy különbség a C++, C# között?
És a sima C mivel tud kevesebbett? -
cucka
addikt
válasz
Forest_roby #1910 üzenetére
fordításhoz általában a fejlesztői csomagok is szükségesek, ezek végén szerepel, hogy -dev. ha hiányzik neki csomag, de az mégis fel van telepítve, akkor legtöbb esetben a dev. csomag hiányzik, ez az első amit le szoktam csekkolni. az ubuntuban jó grafikus csomagkezelő (synaptic vagy adept), ott 1 perc alatt megoldhatóak az ilyen gondok.
-
Jester01
veterán
válasz
Forest_roby #1908 üzenetére
apt-get install libgtk2.0-dev
(debian) -
Forest_roby
őstag
válasz
Jester01 #1907 üzenetére
config.log részletek:
configure:3986: checking for PACKAGE
configure:3991: $PKG_CONFIG --exists --print-errors ''$pkg_modules''
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
configure:3994: $? = 1
configure:4005: $PKG_CONFIG --exists --print-errors ''$pkg_modules''
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
configure:4008: $? = 1
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
configure:4029: error: Package requirements (gtk+-2.0 >= 2.0.0) were not met.
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
&
forest@forest-gep:~/Projektek/first$ sudo apt-get install gtk+-2.0
Password:
Csomaglisták olvasása... Kész
Függőségi fa építése... Kész
E: Nem található a(z) gtk+-2.0 csomag
forest@forest-gep:~/Projektek/first$
HELP!
mod.:
config.log megtekinthető az elöző helyen!
[Szerkesztve] -
Jester01
veterán
válasz
Forest_roby #1906 üzenetére
gtk2 ..... -ból rengeteg dolog van telepítve a gépre.
... csak valószínűleg pont az nem, ami kell
Nézd meg a config.log-ba mit írt, mit keres és miért nem találta.
Amúgy a weboldalad most éppen nem elérhető. -
Jester01
veterán
válasz
Forest_roby #1903 üzenetére
Először is: a configure nem fut le, hibát dob:
checking for PACKAGE... configure: error: Package requirements (gtk+-2.0 >= 2.0. 0) were not met.
Tehát nem csinálja meg a makefile-t, mert hiányzik neki a gtk.
Másodszor: Az egy dolog, hogy a makefile nem készül el, de úgy látom maga a make program sincs telepítve.
Megoldás mindkét problémára: Tedd fel a megfelelő csomago(ka)t.
[Szerkesztve] -
Forest_roby
őstag
Hi!
program fordítás közben ezt a hibát kaptam:
[link] --> ( nem talál make filet, pedig kellene lennie )
A program egy glade projekt.
op.: Ubuntu linux
Tud vki segíteni?
ui.:
A Nagy Linux topicba is belinkelem ezt a kérdést, hátha ott talán jobban tudják!
ui2.:
én írtam:
./autogen.sh
./configure
make ---> itt a hiba!
[Szerkesztve]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Gyúrósok ide!
- Víz- gáz- és fűtésszerelés
- Kertészet, mezőgazdaság topik
- Forrmell.enn
- Hamarosan rézhiánytól szenvedhet az egész chipgyártás
- Fujifilm X
- BestBuy topik
- Nothing Phone (3a) és (3a) Pro - az ügyes meg sasszemű
- Feljutott a G96 a Moto széria csúcsára
- Íme az új Android Auto!
- További aktív témák...
- ÚJ AMD Ryzen 5 5600X BOX AM4 6/12 magos CPU - bontatlan
- L14 Gen5 14" FHD+ IPS Ultra 7 155U 16GB 512GB NVMe ujjlolv IR kam gar
- Kezdőknek legjobb választás: 4 GHz AMD 5400U, 4 mag / 8 szál barebone
- Samsung Galaxy A14 64GB Kártyafüggetlen 1Év Garanciával
- Xiaomi Redmi Note 13 256GB Kártyafüggetlen 1Év Garanciával
- Samsung Galaxy S23 , 8/128GB, Kártyafüggetlen
- 15,6" Dell Latitude laptopok: E6540, E5550, E5570, 5580, 5590, 5500, 5501, 5510/ SZÁMLA + GARANCIA
- CarPlay / Android Auto adapter meglévő Android alapú fejegységhez
- Telefon felvásárlás!! Samsung Galaxy A16, Samsung Galaxy A26, Samsung Galaxy A36, Samsung Galaxy A56
- 14" Dell Latitude laptopok: 5400, 5480, 5490, 7480, E7440, E7450 / SZÁMLA + GARANCIA
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest