C/C++

X programozas help

Fórumok

Probalgatok alap alakzatokat kirajzolni siman Xlib felhasznalasaval, de a kovetkezot tapasztalom: kb 5 esetbol egyszer nem tortenik a letrehozott ablakban semmi, mintha az Xflush nem hajtodna vegre. Ez meg a peldaprogrammal is igy van. Van valakinek barmi otlete, hol kellene keresgelni?

C++, rekurzió, visszatérési érték [megoldva]

Fórumok

A probléma a következő: van egy függvény, aminek egy vektor a visszatérési értéke:


vector<string> fuggveny (string input)
{
  vector<string> visszateres;

  //Dolgok, visszateres.push_back("valami");

  return visszateres;
}

Ezzel eddig nincs is gond, de a függvény bizonyos esetekben meghívja önmagát. És ilyenkor újra létrehozza

vector<string> visszateres

-t, és visszatéréskor csak az utolsó futás eredménye lesz benne.

A kérdés: hogy lehetne, hogy minden hozzáadott elem megmaradjon a vektorban, és a függvény ezzel térjen vissza?

utf8 string kezeles C-ben

Fórumok

Hi.

Van egy ilyen progim:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <locale.h>

int main()
{
char *utf = "ancients ▒. Flavius";
// ^^ itt egy ×-jel van utf8-ben kodolva
printf("%d, %s\n", strlen(utf), utf);
return 0;
}

namost ennek az eredmenye sarge-n (nem utf konzolon):
$ ./ize
19, ancients Ă Flavius
$
Ugyebar a "ancients × Flavius" csak 18 betu hosszu, az strlen azt mondja hogy 19. :(

Akkor probaljuk mashogy:
$ locale -a|grep utf
en_US.utf8
hu_HU.utf8
$ export LANG=hu_HU.utf8
$ export LC_ALL=hu_HU.utf8
$ ./ize
19, ancients Ă Flavius
$

Eredmeny ugyanaz. :(

scanf -es kérdés

Fórumok

sziasztok!

lécci segítsen már valaki. hogyan tudok scanf -fel beolvasni %c,%c formátumban? egy x,y koordinátát kellene beolvasni, ahol az x az a-h -ig az y pedig 1-8 -ig (sakk koordináták) gondoltam a scanf ("%c,%c) az jó lenne, de nem működik, nyilván az entert is beolvassa mint karakter és így már ciklusban futtatva nem igazán jó. esetleg valakinek ötlete?

C++ metaprogramozás, kérdések

Fórumok

Sziasztok!

Nem akarok más topicba belerondítani a kérdésemmel, ha gond lenne az új topic, akkor trey töröld légyszíves!

Nos, van itt egy n alatt k értéket kiszámító metaprogram, aminek működéséről kicsit összekülönböztünk kollégával, így szeretném szakavatottabb ember véleményét kikérni, hogy jó-e az implementáció, mivel szerintem jó:


#include <iostream>
using namespace std;

template<int N, int K>
class NK {
	public:
	static const int result = (N==K) ? 1 : NK<N-1,K-1>::result + NK<N-1,K>::result;
};

template<int N>
class NK<N, 0> {
	public:
	static const int result = 1;
};

template<int K>
class NK<0, K> {
	public:
	static const int result = 0; //0 alatt K nincs ertelmezve, ezert dobunk egy 0-t
};

template<>
class NK<0,0> {
	public:
	static const int result = 0;
};

int main() {
cout << "10 alatt 3 = " << NK<10, 3>::result << endl;
return 0;
}

C++ összehasonlítás vagy rendezés <locale> alapján

Fórumok

Tudna valaki egy példát írni, hogyan lehet C++ <locale> alapján összehasonlítani vagy sorba rendezni (stringeket)?Egyik próbálkozásom (forrás: locale_classes.h):

Template operator to compare two strings using the compare function
of the collate facet in this locale. One use is to provide the
locale to the sort function. For example, a vector v of strings
could be sorted according to locale loc by doing:

std::sort(v.begin(), v.end(), loc);


#include <locale>
#include <vector>

using namespace std;

int main ()
{
    locale loc();
    vector<string> pb;
    pb.push_back("csík");
    pb.push_back("ások");
    pb.push_back("ésik");
    sort(pb.begin(), pb.end(), loc);
    return 0;
}

több oldal hibát ír ki.

szaszi

Stdin figyelése bemenetre várás nélkül

Fórumok

Hello!

Az lenne a kérdésem, hogy milyen (esetleg ANSI) módon lehet megoldani, hogy a program futása közben a getc(stdin)-hez hasonlóan figyeljem a leütött karakter(eke)t, de úgy, hogy a program ne várja meg, amíg kap valami inputot, csak egyszerűen nézze meg, hogy volt-e input adott pont óta és ha nem, akkor folytatódjon a futás.

Köszönöm, bye: night[w]

glade-2 (gnome) & c programot hogy lehet átvinni win-re?

Fórumok

Hi!

probáltam a címet beszédesre fogni...
Szóval, programot készítek linux alatt glade-2 -vel c nyelven.
Amikor elkezdtem a programot készíteni a glade megkérdezte, hogy gtk v. gnome -os legyen és én a gnome-ot választottam. Köv.: a main.c callback.c callback.h -ban szépen ott van, hogy #include <gnome.h> , ez linux alatt nem is baj, de amikor át probáltam rakni winre mindig reklamát, hogy ez a xxx.h nincs-az a yyy.h nincs stb.....
Ezt egy ideig potolgattam, de az egyik header filenál megakadtam, mert a belsejáben X11 -es header filet akart betölteni.....
Lényeg ami lényeg, nem sikerült átvinnem a progit win-re.
Van vkinek vmi jó receptje, hogy hogyan tudnám átvinni a progit winre?

ui.:
( dev-c++ -al probálkoztam win alatt és program include mappájába másolgattam a libeket .... )

Előre is köszi!!

Forest

eclipse + makefile...

Fórumok

Sziasztok!
Van egy olyan problémám, eclipseben tovább írni egy kódot. Van hozzá nekem egy makefile-om amivel tökéletesen lefordul.

A létező és működő makefile:

CC = gcc -Wall -ansi

all:
$(CC) lesson05.c -o lesson05 -lGL -lGLU `sdl-config --cflags --libs`

clean:
@echo Cleaning up...
@rm lesson05
@echo Done.

zzel le tudom fordítani a kódot.
De sehogy se bírom beállítani az eclipse-t hogy úgy, hogy ő is le tudja fordítani.

Például az is gond volt, hogy én a compiler beállításainál nem találtam library fület csak directory-t. Így a -lGL és a -lGLU-t nem is tudtam berakni normálisan csak ilyen egyéb opciók közé. Szóval ha van ehhez valami leírás vagy esetleg ötletetek, hogy hogyan lehet megoldani, (mert nyilván meg lehet csak én nem tudom, hogy :) ,) akkor hálás lennék ha megosztanátok velem.