Che cosa vogliono dire i puntini come parametri delle funzioni ?
esempi di questi si trovano nella printf e nella scanf ma anche nella
printk (Funzione di Linux)
int printk(const char *fmt, ...)
Che cosa vogliono dire i puntini come parametri delle funzioni ?
esempi di questi si trovano nella printf e nella scanf ma anche nella
printk (Funzione di Linux)
int printk(const char *fmt, ...)
:master: i puntini nn li ho mai visti se non nella descrizione del prototipo.
Live fast. Troll hard.
Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
Team Lead @Gameloft Barcelona
Significa che hanno un numero variabile di argomenti.
Un numero variabile di argomenti uguali ai precedenti o possono anche essere diversi ?
Ad una funzione è possibile passare anche un numero variabile di argomenti, un esempio tipico è la funzione printf() dove il primo argomento, costituito dalla stringa di conversione serve a determinare il numero ed il tipo degli argomenti che seguono. Per determinare il corretto funzionamento di una funzione con un numero variabile di argomenti sono necessarie le seguenti chiamate :
void va_start(va_list, lastfix);
type va_arg(va_list ap, type);
void va_end(va_list ap);
Queste sono implementate spesso come macro nel file stdarg.h e servono ad individuare rispettivamente:
il puntatore iniziale al primo argomento della lista (va_start)
a ritornare il valore dell'argomento puntato
ad attribuire ad ap il puntatore all'argomento successivo (va_arg)
ad effettuare le necessarie operazioni per consentire il corretto ritorno alla funzione chiamata (va_end)
La stupidità umana e l'universo sono infinite.
Della seconda non sono certo(Einstein)
Gnu/Linux User