Extern ad una funzione di libreria di sistema

di il
3 risposte

Extern ad una funzione di libreria di sistema

Quando inserisco una extern ad una funzione di libreria di sistema
cosa devo inserire come parametro near o proc o far?
e poi dopo @ che numero devo inserire?
esempio :
extern lenstringa@8:proc ; questa è una funzione mia
extern cin@??:!! ; funzione di libreria.
al posto dei ?? e dei !! cosa ci devo scrivere.
grazie anticipatamente a chi mi sapra rispondere.

3 Risposte

  • Re: Extern ad una funzione di libreria di sistema

    In un sistema moderno (Windows/Linux) che opera in modalità "flat" non c'è differenza tra near e far e quindi non indichi nulla.

    Per la questione del nome@numero te l'avevo indicato alla fine di questa discussione

    https://www.iprogrammatori.it/forum-programmazione/assembly/error-lnk2019-t16280.html
  • Re: Extern ad una funzione di libreria di sistema

    Si ho capito che dopo @ ci va il numero dei parametri espresso in dword.
    cioè 4 per ogni parametro.
    ma per le funzioni di sistema quale ad esempio la cin non conosco il numero dei parametri reali cosi non ho idea sul numero da mettere.
    se poi i parametri delle funzioni di sistema utilizzano una struct questo e un altro discorso.
    che da una parte saprei affrontare passaggio ma dall'altra modifica non conoscendo la struct in questione non saprei affrontare!
    ma siccome non so che tipo di parametri usano se struct o variabili normali pur rileggendo il post
    assembly/error-lnk2019-t16280.html non so come fare!
    visto che sto ancora sperimentndo il sistema passaggio di parametri stdcall.
  • Re: Extern ad una funzione di libreria di sistema

    In particolare, la cin non è una funzione di sistema ma un oggetto di tipo istream quindi non si parla di parametri né di indirizzo per utilizzarla.

    Per il resto, non ho capito i tuoi dubbi ... tutte le funzioni di sistema note (proprio perché tali) sono documentate e si conosce sia il tipo di valore restituito sia il numero e tipo dei parametri.
Devi accedere o registrarti per scrivere nel forum
3 risposte