Differenze tra le versioni di "Scanf()"

Da Gambas-it.org - Wikipedia.
Riga 4: Riga 4:
  
  
Se il programmatore vuole utilizzare la funzione ''scanf()'' all'interno di una libreria esterna specifica da lui creata, allora si potrà adottare il seguente codice.
+
Se il programmatore vuole utilizzare la funzione ''scanf()'' per immettere ''una'' parola, dovrà utilizzarla all'interno di una libreria esterna specifica da lui creata, come segue.
  
 
La libreria esterna specifica, il cui file di codice sorgente sarà chiamato ad esempio ''libimm.c'', può essere:
 
La libreria esterna specifica, il cui file di codice sorgente sarà chiamato ad esempio ''libimm.c'', può essere:

Versione delle 17:18, 6 set 2014

La funzione della libreria di C

int scanf(char *format, args ...)

legge l'input da stdin. Essa consente di inserire dati nello standard inpt.


Se il programmatore vuole utilizzare la funzione scanf() per immettere una parola, dovrà utilizzarla all'interno di una libreria esterna specifica da lui creata, come segue.

La libreria esterna specifica, il cui file di codice sorgente sarà chiamato ad esempio libimm.c, può essere:

#include <stdio.h>


char s;

char * immetti() {

 scanf("%s", &s);

   return (&s);
}

e verrà posta ad esempio nella cartella "Dati" dell'applicativo.

Il codice Gambas potrà essere:

Private Extern immetti() As String In "/tmp/libimm"


Public Sub Main()

 Dim s As String


  Shell "gcc -o /tmp/libimm.so " & Application.Path &/ "/libimm.c -shared -fPIC" Wait

  s = immetti()

  Print s

End

La parola da immettere potrà essere inserita dalla console dell'IDE di Gambas, oppure - se creato l'eseguibile .gambas - dal Terminale ove sarà stato lanciato.