amiga-news DEUTSCHE VERSION
.
Links| Forums| Comments| Report news
.
Chat| Polls| Newsticker| Archive
.

amiga-news.de Forum > Programmierung > GGC 3.4.2 (OS 4) Warnung => Warum? [ - Search - New posts - Register - Login - ]

-1- [ - Post reply - ]

2005-06-29, 09:10 h

Amigalien
Posts: 63
User
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. ]

[ - Answer - Quote - Direct link - ]

2005-06-29, 09:33 h

Ralf27
Posts: 2779
User
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

[ - Answer - Quote - Direct link - ]

2005-06-29, 09:53 h

Gazelle
Posts: 151
User
@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)

[ - Answer - Quote - Direct link - ]

2005-06-29, 11:13 h

alexw
Posts: 137
User
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.

[ - Answer - Quote - Direct link - ]

2005-06-29, 13:25 h

DariusBrewka
Posts: 899
[Banned user]
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 *)


[ - Answer - Quote - Direct link - ]

2005-06-29, 13:35 h

Amigalien
Posts: 63
User
> 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.




[ - Answer - Quote - Direct link - ]


-1- [ - Post reply - ]


amiga-news.de Forum > Programmierung > GGC 3.4.2 (OS 4) Warnung => Warum? [ - Search - New posts - Register - Login - ]


.
Masthead | Privacy policy | Netiquette | Advertising | Contact
Copyright © 1998-2024 by amiga-news.de - all rights reserved.
.