print()、printf() 和 sprintf()三者之间的区别与联系

目录

print() 函数

printf() 函数

sprintf() 函数

总结:

在 C 语言中,有三种常用的输出函数:print()printf()sprintf()。虽然它们都可以用来输出字符串,但是它们的使用方法和输出方式是有区别的。下面,我们将介绍这三个函数的区别和用法。

print() 函数

print() 函数是 C 语言中的一个标准库函数,用于将字符串输出到标准输出设备,即控制台。其函数原型如下:

int print(const char *str);

其中,str 表示要输出的字符串,其类型为 char *。这个函数会将字符串 str 输出到控制台,并返回输出的字符数。

print() 函数有以下特点:

  • 输出结果直接显示在控制台上,不需要使用其他的输出语句;
  • 不支持格式化字符串,只能输出字符串本身;
  • 输出结果无法保存到变量中,只能直接显示在控制台上。

下面是一个使用 print() 函数输出字符串的例子:

#include <stdio.h>

int main() {
    char str[] = "Hello, world!";
    print(str);
    return 0;
}

printf() 函数

printf() 函数也是 C 语言中的一个标准库函数,用于将格式化的字符串输出到标准输出设备,即控制台。其函数原型如下:

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

其中,format 表示要输出的格式化字符串,可以包含格式控制符和普通字符。... 表示可选的参数列表,与格式控制符一一对应。这个函数会将格式化的字符串输出到控制台,并返回输出的字符数。

printf() 函数有以下特点:

  • 支持格式化字符串,可以按照一定的格式输出不同类型的数据;
  • 输出结果直接显示在控制台上,不需要使用其他的输出语句;
  • 输出结果无法保存到变量中,只能直接显示在控制台上。

下面是一个使用 printf() 函数输出格式化字符串的例子:

#include <stdio.h>

int main() {
    int num = 123;
    float pi = 3.14159;
    char str[] = "Hello, world!";
    printf("The number is %d, the pi is %.2f, and the string is %s.\n", num, pi, str);
    return 0;
}

sprintf() 函数

sprintf() 函数也是 C 语言中的一个标准库函数,用于将格式化的字符串写入到字符数组中。其函数原型如下:

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

其中,str 表示目标字符串缓冲区的地址,format 表示要输出的格式化字符串,可以包含格式控制符和普通字符。... 表示可选的参数列表,与格式控制符一一对应。这个函数会将格式化的字符串写入到 str 缓冲区中,并返回写入的字符数。

sprintf() 函数有以下特点:

  • 支持格式化字符串,可以按照一定的格式输出不同类型的数据;
  • 输出结果保存到字符数组中,可以被用于输出或者存储;
  • 输出结果不会直接显示在控制台上,需要使用其他的输出语句输出。

下面是一个使用 sprintf() 函数将格式化字符串写入到字符数组中的例子:

#include <stdio.h>

int main() {
    int num = 123;
    float pi = 3.14159;
    char str[50];
    sprintf(str, "The number is %d, the pi is %.2f.", num, pi);
    printf("%s\n", str);
    return 0;
}

从上面的例子可以看出,sprintf() 函数可以将格式化字符串的输出结果保存到字符数组中,并且可以通过其他的输出语句输出这个字符数组。

总结:

总结来说,print()printf()sprintf() 这三个函数都可以用来输出字符串,但是它们的使用方式和输出方式是有区别的。print() 函数只能输出字符串本身,无法进行格式化;printf() 函数可以进行格式化输出,但是无法保存输出结果;sprintf() 函数可以进行格式化输出,并且可以将输出结果保存到字符数组中。根据不同的需求,选择不同的输出函数可以更加方便地输出所需要的结果。

 随手一赞是对我最大的支持,望以上内容对您有所帮助; 

  • 47
    点赞
  • 77
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值