Home  >  Article  >  Backend Development  >  How to use sprintf function

How to use sprintf function

DDD
DDDOriginal
2023-11-27 14:10:064718browse

Usage of sprintf function: 1. Format string; 2. Specify output width and precision; 3. Return value.

How to use sprintf function

The sprintf function is a formatted output function in C language, used to format data into a string and store it in a specified buffer. The declaration of this function is as follows:

int sprintf(char *str, const char *format, ...);

Among them, str is a pointer to a character array, used to store the formatted string; format is a format control string, used to specify the output format;… Is a variable parameter list used to specify the data to be formatted.

The usage of the sprintf function is as follows:

1. Format string

The sprintf function specifies the output through the format characters in the format control string The format of the data. Common format characters include: %d (integer), %f (floating point number), %c (character), %s (string), etc. In the format control string, the format character is used as a placeholder. When the function is executed, the actual data will be filled into the string according to the specified format.

For example, the following code demonstrates the use of formatting integers and floating point numbers into strings:

int num = 10;
float pi = 3.14159;
char str[50];
sprintf(str, "The number is %d and the value of pi is %.2f", num, pi);
printf("%s\n", str);  // 输出:The number is 10 and the value of pi is 3.14

2. Specify the output width and precision

# The ##sprintf function also supports specifying the width and precision of the output. You can use numbers in the format control string to specify the width of the output, and use "." plus numbers to specify the precision of the output.

For example, the following code demonstrates the use of specifying the output width and precision:

int num = 10;
float pi = 3.14159;
char str[50];
sprintf(str, "The number is %5d and the value of pi is %.2f", num, pi);
printf("%s\n", str);  // 输出:The number is    10 and the value of pi is 3.14

3. Return value

The sprintf function will return the formatted The length of the following string, excluding the terminator '\0'. If the length of the formatted string exceeds the specified buffer size, buffer overflow may occur. Therefore, when using the sprintf function, you need to ensure that the buffer is large enough to avoid overflow.

For example, the following code demonstrates the use of getting the length of a formatted string:

int num = 10;
char str[50];
int len = sprintf(str, "The number is %d", num);
printf("The length of the formatted string is %d\n", len);  // 输出:The length of the formatted string is 16

The sprintf function is a very useful formatted output function that can format the data as string and stored in the specified buffer. By rationally using format control strings and parameters, the output format can be flexibly controlled. However, it should be noted that you should ensure that the buffer is large enough to avoid buffer overflow problems.

The above is the detailed content of How to use sprintf function. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn