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 ... 3645 3646 3647 3648 [3649] 3650 3651 3652 3653 ... 6582 nächste » letzte »
erste ungelesene Seite | letzter Beitrag 
igor]2

Phoenix
Näh. Betrachte mal den Ausdruck
board[2][1]
, wobei board ein 5x5-Array sei:

- Wenns als int** board deklariert ist:

Ich dereferenziere board, springe da zu Offset 2, und finde einen Ausdruck vom Typ int*. Den dereferenziere ich nochmal, und gucke mir da den Offset 1 an. Insgesamt habe ich also zweimal dereferenziert.

- Wenns als int board[5][5] deklariert ist:

Ich dereferenziere board, und finde da einen 25 ints großen, zusammenhängenden Speicherbereich vor. Dann bastele ich mir aus 2*5 + 1 meinen Offset in diesen Speicherbereich zusammen und gucke mir diesen Offset an. Insgesamt habe ich einmal dereferenziert und einmal ein bisschen Arrayarithmetik betrieben.
06.08.2009 0:22:24  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
FIash

AUP FIash 26.01.2008
Vielleicht statt

printf("%d|", board[i][j]);

sowas

printf("%d|", *(*(board + i) + j));
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von FIash am 06.08.2009 0:27]
06.08.2009 0:26:37  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
igor]2

Phoenix
Ja, im Prinzip heißts halt int* statt int** übergeben und Offset selbst errechnen:

int board[5][5] = {
  0, 0, 0, 0, 0,
  0, 0, 0, 0, 0,
  0, 2, 0, 0, 0,
  0, 0, 0, 0, 0,
  0, 0, 0, 0, 0,
};

int *p = &board[0][0];
assert( board[2][1] * p[2*5 + 1] == 4 );


Jedenfalls in normalem C. Will da jetzt nicht ausschließen, dass C99 noch irgendeine Extrawurst brät.
06.08.2009 0:40:43  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
GH@NDI

ghandi2
 
Zitat von igor]2

Näh. Betrachte mal den Ausdruck
board[2][1]
, wobei board ein 5x5-Array sei:

- Wenns als int** board deklariert ist:

Ich dereferenziere board, springe da zu Offset 2, und finde einen Ausdruck vom Typ int*. Den dereferenziere ich nochmal, und gucke mir da den Offset 1 an. Insgesamt habe ich also zweimal dereferenziert.

- Wenns als int board[5][5] deklariert ist:

Ich dereferenziere board, und finde da einen 25 ints großen, zusammenhängenden Speicherbereich vor. Dann bastele ich mir aus 2*5 + 1 meinen Offset in diesen Speicherbereich zusammen und gucke mir diesen Offset an. Insgesamt habe ich einmal dereferenziert und einmal ein bisschen Arrayarithmetik betrieben.



Achja...stimmt...langsam wird da wieder was hell. int array[][] legt ja alles am Stück ab...während wenn ich mir mit int** array mein Array selbst aus zeigern auf speicherbereiche zusammenbastel.

C ist halt doch einfach ziemlich rudimentär Breites Grinsen
06.08.2009 0:41:30  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
GH@NDI

ghandi2
 
Zitat von igor]2

Ja, im Prinzip heißts halt int* statt int** übergeben und Offset selbst errechnen:

int board[5][5] = {
  0, 0, 0, 0, 0,
  0, 0, 0, 0, 0,
  0, 2, 0, 0, 0,
  0, 0, 0, 0, 0,
  0, 0, 0, 0, 0,
};

int *p = &board[0][0];
assert( board[2][1] * p[2*5 + 1] == 4 );


Jedenfalls in normalem C. Will da jetzt nicht ausschließen, dass C99 noch irgendeine Extrawurst brät.



Das mit dem C99 hab ich mittlerweile abgestellt. Den kleinen Luxus
for(int i = 0;...)
schreiben zu können, kommt mir mit zu vielen Sideeffects daher Breites Grinsen

Jetzt kapier ich nur noch nicht ganz, wie ich das mit dem Übergabeparamtern backe...

 
Code:
#include <stdio.h>
#include <stdlib.h>

void printBoard(int *board, int width, int height) {
	printf("printBoard()\n");
	int i, j = 0;
	for(i = 0; i < width; i++) {
		for(j = 0; j < height; j++) {
			printf("%d|", *(board + i*height + j));
		}
		printf("\n");
	}

}

int main(int argc, char** argv) {
	int i, j = 0;
	int width = 5;
	int height = 5;
	int board[width][height];

	for(i = 0; i < width; i++) {
		for(j = 0; j < height; j++) {
			board[i][j] = rand()%10;
		}
	}
	board[0][0] = 0;
	
	printBoard(board, width, height);

	return 1;
}


Es funktioniert zwar, bekomme aber nach wie vor die warning test.c:29: warning: passing argument 1 of ‘printBoard’ from incompatible pointer type"
06.08.2009 0:46:53  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
igor]2

Phoenix
Will wohl statt

printBoard(board, width, height);


ein

printBoard(&board[0][0], width, height);


haben. Im übrigen sollte das hier:

int width = 5;
int height = 5;
int board[width][height];


unter nicht-C99 eigentlich gar nicht klappen, da width und height nicht const int sind.
06.08.2009 0:49:57  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
GH@NDI

ghandi2
Jo,
&board[0][0]
frisst er.

Und warum er das andere schluckt, keine Ahnung, tut er jedenfalls Breites Grinsen

Das geht - zu meiner Überraschung - sogar mit rand() werten Breites Grinsen

 
Code:
#include <stdio.h>
#include <stdlib.h>

void printBoard(int *board, int width, int height) {
	printf("printBoard()\n");
	int i, j = 0;
	for(i = 0; i < width; i++) {
		for(j = 0; j < height; j++) {
			printf("%d|", *(board + i*height + j));
		}
		printf("\n");
	}

}

int main(int argc, char** argv) {
	int i, j = 0;
	int width = rand() % 10 + 1;
	int height = rand() % 10 + 1;
	int board[width][height];

	for(i = 0; i < width; i++) {
		for(j = 0; j < height; j++) {
			board[i][j] = rand()%5;
		}
	}
	board[0][0] = 0;
	
	printBoard(&board[0][0], width, height);

	return 1;
}
06.08.2009 0:54:27  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
Ah cool, WIndows 7 Release morgen nicht nur fpr Technet und MSDN.

Auch MSDNAA \o/
06.08.2009 0:56:04  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
igor]2

Phoenix
Strange. Davon ab, prüf mal ob die Indexermittlung in printBoard korrekt ist. Eventuell müsste das *(board + i*width + j) sein, nicht height.
06.08.2009 0:57:40  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
SirSiggi

SirSiggi
Jungs, kuckt euch Zack and Miri make a porno an. Ein echter Kevin Smith Film, flach, pervers, unter jedem Niveu aber genau auf meinem. Ich hab mich eben in der Sneak einfach nur kaputt gelacht!
06.08.2009 3:47:53  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Strider

Arctic
Sneak? Dann hab ich wohl vor einem Viertel Jahr den Leak gesehen mit den Augen rollend

Egal, ich wollte mich nur kurz mitteilen dass der Zoom H2 ein echt pornoeser Taschenneger ist peinlich/erstaunt
06.08.2009 5:00:27  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
SirSiggi

SirSiggi
Ist wohl schon 2008 in den USA gestartet. Hätte mir ja mal jemand bescheid sagen können das es einen neuen Kevin Smith Film gibt.
06.08.2009 12:43:21  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
SirSiggi

SirSiggi
Authentifizierung mit Kohana gegen eine Legacy-Datenbank fickt seit 1 1/2 Tagen mein Gehirn.

Gleich schreib ich den scheiss einfach selbst. Wobei ich schon gerne die wirklich schicke integrierte Auth-Lösung verwenden würde.
06.08.2009 12:53:52  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
Ich hab ihn letztes Jahr afaik gesehen. War ziemlich lustig
06.08.2009 13:16:26  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
So, ich habe jetzt einen eigenen Kundenberater bei der T-Com der sich höchstpersönlich um das Problem kümmern will fröhlich
06.08.2009 14:32:56  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
SirSiggi

SirSiggi
verschmitzt lachen
Das erzähl ich den Leuten auch immer wenn ich ein Ticket anlege.
06.08.2009 14:36:34  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Achsel-des-Bösen

AUP Achsel-des-Bösen 06.10.2009
Natürlich...
06.08.2009 14:37:03  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
igor]2

Phoenix
Trigger so: *zeter*
Telekom-Hotline so: I understand.
06.08.2009 15:06:00  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
Wie wahr, wie wahr. traurig
06.08.2009 15:17:03  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
http://curiousphotos.blogspot.com/2009/08/my-first-fail-42-pics.html
06.08.2009 15:18:31  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Achsel-des-Bösen

AUP Achsel-des-Bösen 06.10.2009


Das is geil Breites Grinsen
06.08.2009 15:29:10  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
http://9elements.com/io/projects/html5/canvas/
Coole HTML5 Canvas Demo
06.08.2009 16:07:24  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
Frage zum Public Key Verfahren (RSA). Hab mich bisher immer nur mit den mathematischen Hintergründen der Kryptografie befasst.

Der wesentliche Vorteil soll ja sein, dass der private Schlüssel nicht gesendet wird.

Aber irgendwie muss er ja dem Empfänger des Cyphertextes gegeben werden. Schließlich hat der, der den Plaintext verschlüsselt zunächsteinmal den Privaten Schlüssel.

Wie geschieht das?
06.08.2009 16:29:46  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Achsel-des-Bösen

AUP Achsel-des-Bösen 06.10.2009
Situation: A will B eine Nachricht AB zukommen lassen und B antwortet darauf mit der Nachricht BA.

A verschlüsselt AB mit dem öffentlichen Schlüssel von B zu AB' und überträgt dies zu B. B kann AB' jetzt mit seinem privaten Schlüssel entschlüsseln und hat jetzt wieder AB.
B verfasst eine Antwort BA und verschlüsselt sie mit dem öffentlichen Schlüssel von A zu BA'. Die wird zu A übertragen der sie wiederum mit seinem privaten Schlüssel zu BA entschlüsseln kann.

--

Wenn der private Schlüssel übertragen werden müsste, wäre er ja nicht mehr privat.
06.08.2009 16:38:56  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Ashtray

ashtray2
Dipl.-Ing \o/
06.08.2009 16:39:05  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
FIash

AUP FIash 26.01.2008
 
Zitat von TriggerTG


Der wesentliche Vorteil soll ja sein, dass der private Schlüssel nicht gesendet wird.



ja

 

Aber irgendwie muss er ja dem Empfänger des Cyphertextes gegeben werden.



nein

 

Schließlich hat der, der den Plaintext verschlüsselt zunächsteinmal den Privaten Schlüssel.



nein
06.08.2009 16:41:56  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
 
Zitat von Achsel-des-Bösen

Situation: A will B eine Nachricht AB zukommen lassen und B antwortet darauf mit der Nachricht BA.

A verschlüsselt AB mit dem öffentlichen Schlüssel von B zu AB' und überträgt dies zu B. B kann AB' jetzt mit seinem privaten Schlüssel entschlüsseln und hat jetzt wieder AB.
B verfasst eine Antwort BA und verschlüsselt sie mit dem öffentlichen Schlüssel von A zu BA'. Die wird zu A übertragen der sie wiederum mit seinem privaten Schlüssel zu BA entschlüsseln kann.

--

Wenn der private Schlüssel übertragen werden müsste, wäre er ja nicht mehr privat.




Ahh klick, hatte da nen fundamentalen Denkfehler. Danke
06.08.2009 16:47:23  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
 
Zitat von Ashtray

Dipl.-Ing \o/



grats
06.08.2009 16:47:44  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Achsel-des-Bösen

AUP Achsel-des-Bösen 06.10.2009
 
Zitat von TriggerTG

Ahh klick, hatte da nen fundamentalen Denkfehler. Danke


Nächste Frage die du dir stellen kannst: Wie überträgt man einen symmetrischen Schlüssel (zum späteren Verschlüsseln der kommunikation) über eine unsicheres Medium, wenn es keine anderen Kommunikationswege als dieses Medium gibt und die Parteien vorher noch keinen Kontakt hatten.
06.08.2009 16:50:12  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TriggerTG

TriggerTG
Existiert eine Glasfaser-Verbindung die für Quantenmechanische Effekte genutzt werden kann? peinlich/erstaunt
06.08.2009 17:04:23  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
 Thema: Gehirnsalat ( wir unter uns )
« erste « vorherige 1 ... 3645 3646 3647 3648 [3649] 3650 3651 3652 3653 ... 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