Categories:
.NET (357)
C (330)
C++ (183)
CSS (84)
DBA (2)
General (7)
HTML (4)
Java (574)
JavaScript (106)
JSP (66)
Oracle (114)
Perl (46)
Perl (1)
PHP (1)
PL/SQL (1)
RSS (51)
Software QA (13)
SQL Server (1)
Windows (1)
XHTML (173)
Other Resources:
How can I specify a variable width in a scanf format string?
How can I specify a variable width in a scanf format string?
✍: Guest
You can't; an asterisk in a scanf format string means to suppress assignment. You may be able to use ANSI stringizing and string concatenation to construct a constant format specifier based on a preprocessor macro containing the desired width:
#define WIDTH 3
#define Str(x) #x
#define Xstr(x) Str(x) /*
scanf("%" Xstr(WIDTH) "d", &n);
If the width is a run-time variable, though, you'll have to build the format specifier at run time, too:
char fmt[10];
sprintf(fmt, "%%%dd", width);
scanf(fmt, &n);
(scanf formats like these are unlikely when reading from standard input, but might find some usefulness with fscanf or sscanf.)
2015-10-26, 1261👍, 0💬
Popular Posts:
How can a servlet refresh automatically if some new data has entered the database? You can use a cli...
Can Two Forms Be Nested? - XHTML 1.0 Tutorials - Understanding Forms and Input Fields Can two forms ...
How Large Can a Single Cookie Be? - PHP Script Tips - Understanding and Managing Cookies How large c...
.NET INTERVIEW QUESTIONS - What is COM ? Microsoft’s COM is a technology for component software deve...
.NET INTERVIEW QUESTIONS - Where do you specify session state mode in ASP.NET ? The following code e...