printf
のように文字列をフォーマットできますが、代わりに変数に格納する方法は C にありますか? これをシステムコールに使用しようとしているので、呼び出しに変数を含めることができます。
質問する
1693 次
1 に答える
5
を使用してsprintf
(またはsnprintf
C99/C11 で)、文字列を使用する前にフォーマットすることができます。
int sprintf(char *str, const char *format, ...);
int snprintf(char *str, size_t size, const char *format, ...);
例:
// Use the value of an integer 'n' as argument in 'perror' (C99).
#include <limits.h>
#include <stdio.h>
char argument[sizeof(int) * CHAR_BIT + 1];
snprintf(argument, sizeof argument, "%d", n);
perror(argument);
于 2013-06-06T18:25:27.853 に答える