把字元串轉化為整數,atoi 想必這個大家哦度知道,但是linux下沒有itoa
其實是有的,請看:sprintf
man sprintf
就會看到如下:
SYNOPSIS
#include <stdio.h>
int printf(const char *format, ...);
int fprintf(FILE *stream, const char *format, ...);
int sprintf(char *str, const char *format, ...);
int snprintf(char *str, size_t size, const char *format, ...);
#include <stdarg.h>
int vprintf(const char *format, va_list ap);
int vfprintf(FILE *stream, const char *format, va_list ap);
int vsprintf(char *str, const char *format, va_list ap);
int vsnprintf(char *str, size_t size, const char *format, va_list ap);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
snprintf(), vsnprintf():
_BSD_SOURCE || _XOPEN_SOURCE >= 500 || _ISOC99_SOURCE ||
_POSIX_C_SOURCE >= 200112L;
or cc -std=c99
DESCRIPTION
The functions in the printf() family produce output according to a format as described
below. The functions printf() and vprintf() write output to stdout, the standard out‐
put stream; fprintf() and vfprintf() write output to the given output stream;
sprintf(), snprintf(), vsprintf() and vsnprintf() write to the character string str.
The functions snprintf() and vsnprintf() write at most size bytes (including the termi‐
nating null byte ('\0')) to str.
The functions vprintf(), vfprintf(), vsprintf(), vsnprintf() are equivalent to the
functions printf(), fprintf(), sprintf(), snprintf(), respectively, except that they
are called with a va_list instead of a variable number of arguments. These functions
do not call the va_end macro. Because they invoke the va_arg macro, the value of ap is
undefined after the call. See stdarg(3).
These eight functions write the output under the control of a format string that speci‐
fies how subsequent arguments (or arguments accessed via the variable-length argument
facilities of stdarg(3)) are converted for output.
C99 and POSIX.1-2001 specify that the results are undefined if a call to sprintf(),
snprintf(), vsprintf(), or vsnprintf() would cause copying to take place between
objects that overlap (e.g., if the target string array and one of the supplied input
arguments refer to the same buffer). See NOTES.
Return value
Upon successful return, these functions return the number of characters printed
(excluding the null byte used to end output to strings).
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL3cDM5IDMzEDMx0SM3MDOzQzM4EzNxUDM5EDMy0SM1cTN1YTMvwVNwkTMwIzLcFTN3UTN2EzLcd2bsJ2Lc12bj5ycn9Gbi52YugTMwIzZtl2Lc9CX6MHc0RHaiojIsJye.png)
到這裡一目了然,傳回的是整數
char string[32] ;
int number = 0 ;
sprintf(string,"%d",number) ;
printf("%s\n",string) ;
轉載于:https://www.cnblogs.com/ChenChangXiong/p/10883061.html