C语言学习笔记---打印函数printf()和sprintf()函数

x33g5p2x  于2021-10-31 转载在 其他  
字(1.3k)|赞(0)|评价(0)|浏览(512)

printf()函数

在C语言中使用最多的打印函数就是printf(),它可以将各种类型的数据转换为字符串输出。

int main(int argc, char *argv[])
{
	char name[10] = "张三";
	int age = 18;
	char gender[10] = "男";
	
	printf("%s\r\n",name);
	printf("%d\r\n",age);
	printf("%s\r\n",gender);
	
	
	system("pause");
	return 0;
}

比如这里分别定义了姓名、年龄、性别、三个变量,使用printf()函数可以依次将这几个信息通过字符串的格式输出。通过转换符来定义输出的对象是什么格式的。常用的转换符格式如下:

  转义字符也可以多个混合一起使用,比如上面的三条打印语句可以合成为一条打印语句。

  将三条信息合称为一条语句打印出来。printf()函数只能将不同类型的数据转换为字符串打印出来,但是有时候只需要把其他类型转换为字符串,不需要输出,那么这时就可以使用sprintf()函数来实现。

sprintf()函数

sprintf()函数主要用来将其他类型的数据转换为字符串。比如上面例子中的 变量 age 为整形,可以使用sprintf()函数将age转换为字符串。

int main(int argc, char *argv[])
{
	char name[10] = "张三";
	int age = 18;
	char gender[10] = "男";
	
	char age_str[10];
		
	sprintf(age_str,"%d",age);
	puts(age_str);
	
	system("pause");
	return 0;
}

通过sprintf()函数将整形的age转换为字符串存储在age_str中。sprintf()函数总共有三个参数,第一个参数是目标字符串,存储转换后的字符串的内容,第二个参数是转义字符,表示待转换数据的格式,第三个参数是待转换的数据。

上面的例子中第一个参数 age_str 用来存储转换后的字符串,第二个参数%d表示待转换的数据为十进制整形数据,第三个参数为待转换的整形变量。

和printf()函数一样sprintf()函数也可以多个类型的数据一起转换,将多个数据打印为一个字符串。上面的程序可以修改为:

int main(int argc, char *argv[])
{
	char name[10] = "张三";
	int age = 18;
	char gender[10] = "男";
	
	char str[30];
		
	sprintf(str,"%s %d %s",name,age,gender);
	puts(str);
	
	system("pause");
	return 0;
}

将姓名、年龄、性别这三个统一打印成一条字符串存储在字符串str中,然后使用puts()函数将字符串str打印出来。

  通过打印结果可以看出输出的效果和使用printf()函数是一样的。

相关文章