sprintf与printf的不同点是什么?

printf函数与sprintf不同之处有:

(1)函数的声明不同

[cpp]  view plain  copy
  1. int printf(const char *format [, argument]...);   
  2. int sprintf(char *buffer, const char *format [, argument] ...);  
sprintf比printf多一个参数buffer,这个参数的作用见(2)的描述。


(2)函数的功能不同

  • 函数printf(...)根据指定的格式(format)将参数(argument)输出到屏幕上;
  • 函数sprintf(...)根据指定的格式(format)将参数(argument)输出到由指针buffer指定的字符数组(字符缓冲区)中;


(3)用法举例

[cpp]  view plain  copy
  1. #include   
  2. void main()  
  3. {  
  4.   /*字符数组buffer用于存放sprintf函数的输出*/  
  5.   char buffer[256];   
  6.   int x = 100;  
  7.   char *message = "Hello world";  
  8.      
  9.   /* 用sprintf函数将x和message输出到字符数组buffer中 */  
  10.   sprintf(buffer, "%s%d", message, x);  
  11.      
  12.   /* 用printf函数将buffer的内容输出到屏幕上显示 */  
  13.   printf("%s\n", buffer);     
  14. }  

你可能感兴趣的:(c,sprintf,printf)