amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Programmierung > GGC 3.4.2 (OS 4) Warnung => Warum? [ - Suche - Neue Beiträge - Registrieren - Login - ]

-1- [ - Beitrag schreiben - ]

29.06.2005, 09:10 Uhr

Amigalien
Posts: 63
Nutzer
PROBLEM GELÖST











Hallo alle zusammen,
ich stehe hier gerade etwas auf dem Schlauch.

Ich bekomme folgende Warnung und möchte diese gerne weg haben:

> warning: assignment makes integer from pointer without a cast

Ich habe folgenden Code:

//...

struct Screen *screen;

//...

struct TagItem tagwindow[] =
{ WA_PubScreen, 0,
WA_Width,640,
WA_Height,480,
//...
}

//...

void irgendetwas(void)
{
//...
screen = (struct Screen *) IIntuition->OpenScreenTagList(0,tagscreen); //Hier entsteht eine Warnung =>Warum?
tagwindow[0].ti_Data = (struct Screen *) screen; //Hier entsteht eine Warnung =>Warum?
//...
}

Ich benutze den gcc 3.4.2 (Amiga, Inc. build 20040910) unter AmigaOS 4.0.

Schon einmal vielen Dank für eure Hilfe...

[ Dieser Beitrag wurde von Amigalien am 29.06.2005 um 13:43 Uhr editiert. ]

[ - Antworten - Zitieren - Direktlink - ]

29.06.2005, 09:33 Uhr

Ralf27
Posts: 2779
Nutzer
Zitat:
Original von Amigalien:

//...
screen = (struct Screen *) IIntuition->OpenScreenTagList(0,tagscreen); //Hier entsteht eine Warnung


Ich hab zwar von C keine ahnung, aber schreibt man Intuition nicht mit einem I am Anfang? :) Oder war das nur ein vertipper hier im Forum?

--
http://www.alternativercomputerclub.de.vu

[ - Antworten - Zitieren - Direktlink - ]

29.06.2005, 09:53 Uhr

Gazelle
Posts: 151
Nutzer
@Amigalien:

Zitat:
screen = (struct Screen *) IIntuition->OpenScreenTagList(0,tagscreen);
Nimm mal NULL anstatt 0, ausserdem sollte das wohl tagwindow und nicht tagscreen heissen?

Zitat:
tagwindow[0].ti_Data = (struct Screen *) screen;

screen ist ja schon (struct Screen *), aber ti_Data ist ULONG

@Ralf27:

IIntuition -> Interface Intuition (neu seit OS4)

[ - Antworten - Zitieren - Direktlink - ]

29.06.2005, 11:13 Uhr

alexw
Posts: 137
Nutzer
Zitat:
Original von Gazelle:
@Amigalien:
Zitat:
screen = (struct Screen *) IIntuition->OpenScreenTagList(0,tagscreen);
Nimm mal NULL anstatt 0, ausserdem sollte das wohl tagwindow und nicht tagscreen heissen?
0 sollte schon gehen. Und tagwindow ist soweit ich das sehe für das Fenster und nicht für den Screen gedacht, also schon richtig. Würde mich interessieren, wie tagscreen aussieht.
Das (struct Screen *) sollte unnötig sein, weil OpenScreenTagList eh ein (struct Screen *) zurückgibt, schadet aber nicht.

Alex.

[ - Antworten - Zitieren - Direktlink - ]

29.06.2005, 13:25 Uhr

DariusBrewka
Posts: 899
[Benutzer gesperrt]
Zitat:
IIntuition->OpenScreenTagList(0,tagscreen); //Hier entsteht eine Warnung =>Warum?

OpenScreenTagList erwartet als ersten Parameter einen Zeiger au eine NewScreen Struktur, du gibst hier aber eine 0 an, was ein Integer ist.
Für 0 Pointer verwendet man NULL.

Zitat:
tagwindow[0].ti_Data = (struct Screen *) screen; //Hier entsteht eine Warnung =>Warum?

das ti_Data Feld ist vom Type ULONG, es ist genau umgekehrt wie oben, d.h. nimm hier (ULONG) anstatt (struct Screen *)


[ - Antworten - Zitieren - Direktlink - ]

29.06.2005, 13:35 Uhr

Amigalien
Posts: 63
Nutzer
> OpenScreenTagList erwartet...

Danke für den Hinweis.

> das ti_Data Feld ist vom Type ULONG, es ist genau umgekehrt wie
> oben, d.h. nimm hier (ULONG) anstatt (struct Screen *)

Und siehe da...es funktioniert. Danke für eure Hilfe. Möge der Amiga mit euch sein.




[ - Antworten - Zitieren - Direktlink - ]


-1- [ - Beitrag schreiben - ]


amiga-news.de Forum > Programmierung > GGC 3.4.2 (OS 4) Warnung => Warum? [ - Suche - Neue Beiträge - Registrieren - Login - ]


.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.