2014-05-11 1 views
-2

EDIT: Le programme contient l'en-tête et est incompatible avec gcc et win7. Je pense que je dois utiliser DOSBox avec turbo c pour exécuter le programme ...Erreur lors de l'exécution de cette partie de C exécutée dans dev C++ - "Erreur de syntaxe avant * jeton"

L'ensemble du programme est ici: http://blackwhite.8866.org/bhh/asc.c

Voici le code correspondant qui reçoit le message d'erreur:

main(){ 
    char far *p = (char far *),0xA0000000,far *py, far *px; 
    /* some other codes */ 
} 

Je ne sais pas pourquoi il y aurait cette erreur puisque le code est donné par le professeur comme un devoir (nous devons créer le même programme dans l'assemblage 8086).

Je suppose que le problème est avec Dev C++, mais je n'ai aucune idée non plus ...

Merci à l'avance!

+0

Qu'est-ce que 'chat loin'? – tod

+0

Ne devrait-il pas s'agir de char loin, * p, ...; '? – tod

+0

Désolé, faute de frappe! Changé maintenant :) – Sue

Répondre

0
int main(){ 
    char far *p = (void far *)0xA0000000; // Initialize a far * to point to address. 
    void far *py;       // type of far pointer required. (void, char, int, etc.) 
    void far *px;       // type of far pointer required. (void, char, int, etc. 
    /* some other codes */ 

    return(0); 
} 
+0

Pourquoi 'void' ...? – alk

+0

@alk, paresseux de ma part. Un type de pointeur vide peut être utilisé pour initialiser tout autre type de pointeur Et c'est une façon de dire "je ne sais pas vraiment ce qui réside à l'adresse 0xA0000000 –

+0

@Mahonri MoriancumerThat cela ne fonctionne pas .... J'ai trouvé que le code inclut des en-têtes qui ne sont pas compatibles avec gcc Je me demande si cela peut aussi être le problème? – Sue

Questions connexes