sprintf與printf的不同點是什麼?
阿新 • • 發佈:2019-02-13
printf函式與sprintf不同之處有:
(1)函式的宣告不同
int printf(const char *format [, argument]...);
int sprintf(char *buffer, const char *format [, argument] ...);
sprintf比printf多一個引數buffer,這個引數的作用見(2)的描述。
(2)函式的功能不同
- 函式printf(...)根據指定的格式(format)將引數(argument)輸出到螢幕上;
- 函式sprintf(...)根據指定的格式(format)將引數(argument)輸出到由指標buffer指定的字元陣列(字元緩衝區)中;
(3)用法舉例
#include <stdio.h>
void main()
{
/*字元陣列buffer用於存放sprintf函式的輸出*/
char buffer[256];
int x = 100;
char *message = "Hello world";
/* 用sprintf函式將x和message輸出到字元陣列buffer中 */
sprintf(buffer, "%s%d", message, x);
/* 用printf函式將buffer的內容輸出到螢幕上顯示 */
printf("%s\n", buffer);
}