Bonjour à tous;
J'essaie d'utiliser une fonction à arguments variables; mais quand je l'appelle avec un seul argument ça ne marche, et la méthode vsnprintf génère une exception, mais avec deux paramètre ça marche.
Auriez-vous une solution ou une explication, pourquoi j'ai une exception à ce niveau. Merci à tous.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
CString GetMessages(const char* arg,...)
{
 
	CString LstMsg;
	char	buf[4096], *p = buf;
	const char* format="%s";
	va_list	args;
	va_start(args, arg);
	p += _vsnprintf(p, sizeof buf - 1, format, args);
 
	while ( p > buf  &&  isspace(p[-1]) ) {
			*--p = '\0';
	}
	*p   = '\0';
 
	char msg[4096]; 
	sprintf (msg, format, buf);
	LstMsg=msg;
        return LstMsg;
 
}