Du bist nicht eingeloggt! Möglicherweise kannst du deswegen nicht alles sehen.
  (Noch kein mods.de-Account? / Passwort vergessen?)
Zur Übersichtsseite
Hallo anonymer User.
Bitte logge dich ein
oder registriere dich!
 Moderiert von: Che Guevara


 Thema: Gehirnsalat ( wir unter uns )
« erste « vorherige 1 ... 5024 5025 5026 5027 [5028] 5029 5030 5031 5032 ... 6582 nächste » letzte »
erste ungelesene Seite | letzter Beitrag 
flying sheep

AUP flying sheep 04.12.2011
bin gerade dabei, einen patch für firefox zu schreiben, kann aber kein c++.
bisher sieht das programm so aus:
 
Code:
get_gtk_cursor(nsCursor aCursor) {
  GdkCursor *gdkcursor = nsnull;
  PRUint8 newType = 0xff;
  
  if ((gdkcursor = gCursorCache[aCursor])) {return gdkcursor;}
  
  //dicker switch, um die interne enum in cursors umzusetzen
  switch (aCursor) {
  ...
  case eCursor_nesw_resize:
    //wir behaupten jetzt mal, das theme des users hat diesen cursor nicht
    //hurr
    newType = MOZ_CURSOR_NESW_RESIZE;
    break;
  case eCursor_all_scroll:
    //diesen hier erstellen wir mit einer 100000 jahre alten funktion,
    //die tolle cursor wie "boat" enthält, aber keine doofen wie den obigen.
    //durr
    gdkcursor = gdk_cursor_new(GDK_FLEUR);
    break;
  ...
  }
  if (newType != 0xff) {
    ... //erstelle nen hässlichen customcursor
  }
  gCursorCache[aCursor] = gdkcursor;
  return gdkcursor;


nach meinem patch soll für jedes switch-statement sowas reinkommen:
 
Code:
case eCursor_nesw_resize:
  //array aller aliase. geht so wohl nicht in c++
  char[][] aliases = {"nesw-resize", "bd_double_arrow", "size_bdiag"};
  for each (char[] name in aliases) {
    gdkcursor = gdk_cursor_new_from_name(name);
    if (gdkcursor != NULL)
      break;
    //sonst probieren wir die übrigen aliases durch.
  }
  //wenn das theme so scheiße ist, dass es kein einziges der aliases enthält,
  //können wir ja als fallback unsere hässlichen cursor selberbauen
  if (gdkcursor == NULL)
    newType = MOZ_CURSOR_NESW_RESIZE;
  break;



jetzt die frage: kann jemand meinem scriptsprachen-verwöhnten geist auf die sprünge helfen und mir beibringen, wie man „iteriere über ein stringarray“ in c++ löst?
12.11.2010 14:36:57  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
igor]2

Phoenix
 
Code:
	const char* items[] = {"foo", "bar", "baz"};
	for (int i = 0; i < sizeof(items) / sizeof(items[0]); i++)
	{
		const char* item = items[i];
	}
12.11.2010 15:09:47  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
flying sheep

AUP flying sheep 04.12.2011
geht das auch, wenn die strings verschieden lang sind? oder ist das ein array von referenzen und
sizeof(items[0])
gibt die speichergröße eines pointers zurück?
12.11.2010 15:24:33  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Achsel-des-Bösen

AUP Achsel-des-Bösen 06.10.2009
Wird die Funktion öfter mal aufgerufen? Wenn die nämlich im Repaint-Loop drin ist, dürfte der Grund für das Swtich-Statement die Performance sein.
12.11.2010 16:43:26  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
flying sheep

AUP flying sheep 04.12.2011
die wird einmal pro cursoränderung aufgerufen.

dass ich das patchen will, hat schon seine richtigkeit: die funktion
gdk_cursor_new_from_name
gibt es nämlich erst seit gtk 2.8, was aber inzwischen etabliert genug ist, dass man es ändern kann.
12.11.2010 17:37:36  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
Idioten gibt es... Eben auf dem Weg vom Edeka zurück nach Hause war ein Dreieck aus 3 Kreuzungen durch die Polizei abgesperrt. Ich vermute wegen eines Demonstrations-Zugs.

Ich wollte dann die Straße auf höhe der Fußgängerampel überqueren. Da genau an der Stelle ein Bully stand un die Straße blockiert hat und die Autos standen, bin ich natürlich rüber ohne auf Grün zu warten.

Auf höhe der linken Fahrbahn der rechten Spur meinte dann der vorderste Fahrer genau dann gereizt vollgas zu geben (um einen U-Turn zu beginnen) als ich nur noch Zentimeter von seiner Fahrspur entfernt war. Entsprechend hat er mich fast um erwischt.


Hab mich richtig erschrocken. Naja, ein Streifenwagen hat ihn danach verfolgt. Ich hoffe das wird teuer. Mieses Arschloch.
12.11.2010 17:54:34  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
flying sheep

AUP flying sheep 04.12.2011
andere frage zu nem anderen c++-programm:

was bedeutet
unsigned long	ttf_count = *(unsigned long*) &buffer[0x08];


gehe ich recht in der annahme, dass hier einfach das zeichen an achter stelle des strings, auf den
*buffer
zeigt, als
unsigned long
interpretiert und als solcher in
ttf_count
gespeichert wird?

/e ich frage das, weil verwundert bin, dass in der datei an dieser stelle nur eine 0 ist, obwohl da die anzahl der enthaltenen ttf-dateien gespeichert sein sollte.
also ist entweder das programm, das ich mir anschaue doof, die datei nicht standardgemäß, oder ich interpretiere eben den code falsch.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von flying sheep am 12.11.2010 18:27]
12.11.2010 18:14:39  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Flash_

AUP FIash 26.01.2008
Hast du den Buffer geflusht?
12.11.2010 18:41:29  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Zensiert

AUP Zensiert 28.11.2007
...
Geil, wie man sich mit so ein paar alten Bildern schoen wehtun kann \o/
12.11.2010 18:48:57  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
SirSiggi

SirSiggi
Du warst eben ein hässliches Kind. traurig
12.11.2010 18:50:47  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Danzelot

AUP Danzelot 28.02.2014
verschmitzt lachen
Frei.Wild? Waren die nicht rechts? Oder warum erinnern dich mich so an die Onkelz?
12.11.2010 18:53:20  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
flying sheep

AUP flying sheep 04.12.2011
 
Zitat von Flash_

Hast du den Buffer geflusht?


nein, ich hab die datei in nem hexeditor offen gehabt und von byte 5 bis 12 oder so sind nur nuller.
12.11.2010 19:08:05  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
SkunkyVillage

PpdpP - SkunkyVillage
betruebt gucken
 
Zitat von Danzelot

Frei.Wild? Waren die nicht rechts? Oder warum erinnern dich mich so an die Onkelz?


Lektion 1: Harter Deutschrock ist immer rechts.
Lektion 2: Ist eine harte Deutschrock-Band nicht rechts, tritt automatisch Lektion 1 in Kraft.

Übrigens sind das Italiener (Südtiroler um genau zu sein).
12.11.2010 19:10:03  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Renga

renga
ich braeuchte mal schnell hilfe ... oder zumindest ne idee.

ich lese ein array ein mit sagen wir 2 elementen. wenn ich mir ueber A'Length die Laenge des Arrays ausgeben will bekomme ich "4262725" raus und ich hab kein Plan warum. kann mir das irgendwer erklaeren?
12.11.2010 19:23:26  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
[DK]Peacemaker

[dk]peacemaker
 
Zitat von Renga

ich braeuchte mal schnell hilfe ... oder zumindest ne idee.

ich lese ein array ein mit sagen wir 2 elementen. wenn ich mir ueber A'Length die Laenge des Arrays ausgeben will bekomme ich "4262725" raus und ich hab kein Plan warum. kann mir das irgendwer erklaeren?


Code bitte.
12.11.2010 19:25:32  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Flash_

AUP FIash 26.01.2008
 
Zitat von Renga

ich braeuchte mal schnell hilfe ... oder zumindest ne idee.

ich lese ein array ein mit sagen wir 2 elementen. wenn ich mir ueber A'Length die Laenge des Arrays ausgeben will bekomme ich "4262725" raus und ich hab kein Plan warum. kann mir das irgendwer erklaeren?


Hast du das Ende mit NULL markiert?
12.11.2010 19:28:20  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Renga

renga
ok, also der fehlerliegt wohl darin

Grenze : Integer;
Benutzer_Permutation : Permutation (1 .. Grenze);

grenze wird erst zu laufzeit eingelesen. Deshalb nimmt er wohl den max. Wert. Aber ich brauch die Anzahl an elemente im Array und nicht den rießen wert, den Ada mir anlegt, nur weil er die Grenze nicht kennt.
12.11.2010 19:31:26  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Ashtray

ashtray2
 
Zitat von SkunkyVillage

 
Zitat von Danzelot

Frei.Wild? Waren die nicht rechts? Oder warum erinnern dich mich so an die Onkelz?


[...]
Übrigens sind das Italiener (Südtiroler um genau zu sein).


Ein Grund mehr. Eigentlich kommt der ganze Kram ja von dem blöden Mussolini Wütend

Aber Italiener mag ja eh niemand!
12.11.2010 20:07:44  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
igor]2

Phoenix
 
Zitat von flying sheep

geht das auch, wenn die strings verschieden lang sind? oder ist das ein array von referenzen und
sizeof(items[0])
gibt die speichergröße eines pointers zurück?


Letzteres.
13.11.2010 0:22:24  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
igor]2

Phoenix
 
Zitat von flying sheep

andere frage zu nem anderen c++-programm:

was bedeutet
unsigned long	ttf_count = *(unsigned long*) &buffer[0x08];


gehe ich recht in der annahme, dass hier einfach das zeichen an achter stelle des strings, auf den
*buffer
zeigt, als
unsigned long
interpretiert und als solcher in
ttf_count
gespeichert wird?


Nein. Es interpretiert die naechsten 4 Bytes (oder 8 Bytes, je nach Architektur) *beginnend* an Position 8 von buffer als unsigned long; also nicht nur das eine Element in buffer[8].
13.11.2010 0:25:40  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
flying sheep

AUP flying sheep 04.12.2011
weil long 4 bytes lang ist? dann macht das sinn!
13.11.2010 1:24:46  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
flying sheep

AUP flying sheep 04.12.2011
und was macht dann das hier?
unsigned long*	ttf_offset_array = (unsigned long*) &buffer[0x0C];
13.11.2010 2:01:18  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
cms

AUP cms 14.11.2012
Kommt drauf an: Unter Windows ist long immer 4 Bytes lang. Unter Unix/Linux ist long 4 Bytes lang, wenn es sich um ein 32-Bit-System handelt und 8 Bytes, wenn es sich um ein 64-Bit-System handelt.

/: Nach 40 Minuten einfach so dazwischenposten ...
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von cms am 13.11.2010 2:02]
13.11.2010 2:02:22  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
flying sheep

AUP flying sheep 04.12.2011
bin gerade dabei, ein c++-programm, das ttc- in ttf-dateien umwandelt nach python zu portieren, um dabei die basics von c++ zu lernen, und gleichzeitig die-low-level-module von python kennenzulernen. neueste entdeckung: struct.unpack_from("!L", buffer, 0x08)
13.11.2010 2:13:09  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
-Marvin-

-Marvin-
verschmitzt lachen
Ihr spinnt doch! alle!
13.11.2010 9:54:22  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Renga

renga
 
Zitat von Renga
ok, also der fehlerliegt wohl darin

Grenze : Integer;
Benutzer_Permutation : Permutation (1 .. Grenze);

grenze wird erst zu laufzeit eingelesen. Deshalb nimmt er wohl den max. Wert. Aber ich brauch die Anzahl an elemente im Array und nicht den rießen wert, den Ada mir anlegt, nur weil er die Grenze nicht kennt.



War ziemlich zusammenhanglos, was ich da von mir gegeben hab ...
Nach ein bischen nachdenken (:P) bin ich doch noch auf ne Loesung gekommen.

 
Code:
procedure Foo() is
   Grenze : Integer;
   procedure Bar(I : in Integer)is
      type Boobar is array (Positive range <>) of Positive;
      Koobar : Boobar(1..Grenze);
   begin
      
   end Bar;
begin
Get (Grenze);
Bar (Grenze);
end Foo;


Eigentlich ganz einfach ... aber gestern ging echt gar nix mehr.
13.11.2010 10:04:45  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Renga

renga
Ich hab mich gerade tatsaechlich bei facebook registriert. Mich schauderts leicht.

Breites Grinsen
13.11.2010 10:26:26  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
Zur Zeit kommen Mittwochs immer 3 Freunde längst zum Bier trinken.

Da kam mir grad die Idee, dass man da mit Gesellschaftsspielen das Niveau etwas heben könnte. Tipps?Hinter Monopoly hört mein Horizont da schon auf fröhlich
13.11.2010 11:53:00  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Danzelot

AUP Danzelot 28.02.2014
Wenn ihr etwas Zeit habt: Risiko. Ansonsten Siedler von Catan oder Carcasonne. Je nach Nerdfaktor deiner Leute ist Munchkin auch toll.
13.11.2010 11:57:31  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
Nerdfaktor strebt gegen Null. Wir haben uns auch mal bei 'nem Schwedentrip an einer Variation von "Mensch ärger dich nicht" probiert. Hat dazu geführt, dass wir nen ganzen Tag nicht mehr miteinander gesprochen haben und alle ziemlich aggressiv wurden fröhlich

--

Hmhm. Bisschen Geld muss man da scheinbar auch in die Hand nehmen :X
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von TriggerTG am 13.11.2010 12:18]
13.11.2010 12:02:17  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
 Thema: Gehirnsalat ( wir unter uns )
« erste « vorherige 1 ... 5024 5025 5026 5027 [5028] 5029 5030 5031 5032 ... 6582 nächste » letzte »

mods.de - Forum » Webdesign & Coding » 

Hop to:  

Thread-Tags:
Mod-Aktionen:
23.08.2018 12:40:15 TriggerTG hat den Thread-Titel geändert (davor: "Wiederbelebungssalat")
09.03.2017 08:55:19 TriggerTG hat den Thread-Titel geändert (davor: "Gehirnsalat")
21.05.2014 16:08:26 Redh3ad hat den Thread-Titel geändert (davor: "Hochzeitssalat")
10.05.2014 09:43:28 Redh3ad hat den Thread-Titel geändert (davor: "Gehirnsalat")
19.10.2013 21:43:03 [DK]Peacemaker hat diesen Thread repariert.
04.10.2013 20:11:45 TriggerTG hat den Thread-Titel geändert (davor: "Damiferkel-Salat")
29.08.2013 19:59:27 [DK]Peacemaker hat den Thread-Titel geändert (davor: "HerpDerpSalat")
19.08.2013 10:04:19 TriggerTG hat den Thread-Titel geändert (davor: "SirSiggiSalat")
13.08.2013 18:43:13 TriggerTG hat den Thread-Titel geändert (davor: "Kamelwochensalat")
05.08.2013 09:47:37 TriggerTG hat den Thread-Titel geändert (davor: "Gehirnsalat")
24.06.2013 16:30:39 TriggerTG hat den Thread-Titel geändert (davor: "cmssalat")
20.06.2013 12:58:35 TriggerTG hat den Thread-Titel geändert (davor: "Krissalat")
13.06.2013 10:59:25 TriggerTG hat den Thread-Titel geändert (davor: "Gehirnsalat")
08.06.2013 11:28:06 TriggerTG hat den Thread-Titel geändert (davor: "rABBIntensalat")
03.06.2013 09:56:52 TriggerTG hat den Thread-Titel geändert (davor: "Gehirnsalat")

| tech | impressum