在C语言中使用最多的打印函数就是printf(),它可以将各种类型的数据转换为字符串输出。
int main(int argc, char *argv[]) { char name[10] = "张三"; int age = 18; char gender[10] = "男"; printf("%srn",name); printf("%drn",age); printf("%srn",gender); system("pause"); return 0; }
比如这里分别定义了姓名、年龄、性别、三个变量,使用printf()函数可以依次将这几个信息通过字符串的格式输出。通过转换符来定义输出的对象是什么格式的。常用的转换符格式如下:
转义字符也可以多个混合一起使用,比如上面的三条打印语句可以合成为一条打印语句。
将三条信息合称为一条语句打印出来。printf()函数只能将不同类型的数据转换为字符串打印出来,但是有时候只需要把其他类型转换为字符串,不需要输出,那么这时就可以使用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()函数是一样的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)