Rumah  >  Artikel  >  pembangunan bahagian belakang  >  C中printf、sprintf和fprintf的区别(代码示例)

C中printf、sprintf和fprintf的区别(代码示例)

藏色散人
藏色散人asal
2019-04-18 15:44:102969semak imbas

本篇文章主要给大家介绍C语言中printf、sprintf和fprintf的区别,希望对需要的朋友有所帮助!

printf:

printf函数用于在stdout(标准输出)控制台打印字符流数据。

语法:

int printf(const char* str, ...);

示例:

#include<stdio.h> 
int main() 
{ 
   printf("hello geeksquiz"); 
   return 0; 
}

输出:

hello geeksquiz

sprintf:

语法:

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

sprintf用于将格式化文本(字符串/字符流)打印到字符串缓冲区上。

示例:

#include<stdio.h> 
int main() 
{ 
    char buffer[50]; 
    int a = 10, b = 20, c; 
    c = a + b; 
    sprintf(buffer, "Sum of %d and %d is %d", a, b, c); 
    printf("%s", buffer); 
  
    return 0; 
}

输出:

Sum of 10 and 20 is 30

fprintf:

fprintf用于在文件中打印字符串内容,但不在stdout(标准输出)控制台上打印。

int fprintf(FILE *fptr, const char *str, ...);

示例:

#include<stdio.h> 
int main() 
{ 
    int i, n=2; 
    char str[50]; 
  
    FILE *fptr = fopen("sample.txt", "w"); 
    if (fptr == NULL) 
    { 
        printf("Could not open file"); 
        return 0; 
    } 
  
    for (i=0; i<n; i++) 
    { 
        puts("Enter a name"); 
        gets(str); 
        fprintf(fptr,"%d.%s\n", i, str); 
    } 
    fclose(fptr); 
  
    return 0; 
}
输入: GeeksforGeeks
       GeeksQuiz
输出:  sample.txt file now having output as 
0. GeeksforGeeks
1. GeeksQuiz

相关推荐:《C教程

Atas ialah kandungan terperinci C中printf、sprintf和fprintf的区别(代码示例). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn