Not logged in. · Lost password · Register

Forum: Bachelor Softwaresysteme Systemprogrammierung RSS
ich kappiere es nicht
Lucius
Avatar
Member since Oct 2002
185 posts
Subject: Hilfe-Aufgabe 8
Ich denke mein Programm sollte einigermassen fertig sein.

Aber wenn ich compiliere passiert folgendes:

Fehlermeldung: "assignment from incopatibel pointer type"

Dazu der relefante code:

#include ...
....
...

int main(){

struct ring_buffer* shm_buffer = NULL;
...
...

shm_buffer=attach_shm;
....
}

dazu der Code von  attach_shm():

ring_buffer* attach_shm() {
    ring_buffer* shm;

    shm = shmat(shmid,0,0);
    if(shm==-1){
        perror("attach");
        return NULL;
    }

    return shm;
}


Hoffe auf baldige antwort :moody:
lalalala
Max
Member since Oct 2002
1296 posts
hrhr, die Lösung dazu ist geil :-D
du musst die -1 casten *g*
das nächste mal gibst du bitte ne zeilennummer an und schreibst deinen Code in ein Code-Segment, dafür gibts die Option hier im Forum :motz:

if(shm==(struct ring_buffer*) -1){

/€: Ich frag mich grad, wie du das shm attachen kannst ohne ende shmid zu übergeben...
BLUBB
This post was edited on 2004-01-28, 10:10 by Max.
frahi
Avatar
Member since Nov 2002
777 posts
In reply to post #1
Quote by Lucius:
Fehlermeldung: "assignment from incopatibel pointer type"

    shm = shmat(shmid,0,0);
    if(shm==-1){
}


shmat liefert einen void Pointer  zurueck, den du dann an shm zuweissen willst.
shm ist nicht vom typ (void *)    

=> Fehlermeldung Zuweisung eines inkompatiblem Pointertypes

-1 koennte durchaus ein (void *) deswegen sollte sich der compiler da nicht beschweren
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Go to forum
Datenschutz | Kontakt
Powered by the Unclassified NewsBoard software, 20150713-dev, © 2003-2011 by Yves Goergen