首页 > 代码库 > C语言之输入输出深入剖析

C语言之输入输出深入剖析



输出字符串:

puts()函数:
puts()函数只接受一个参数(指向要显示的字符串的指针)。由于字面字符串是一个指向字符串的指针,因此
puts()可用于显示字面字符串和字符串变量。
puts()显示完字符串后,自动换行。
puts()是一个标准的输出函数,需要包含stdio.h。




printf()函数:
printf()函数是库函数,可用于显示字符串,使用转换说明符%s。
当printf()遇到其格式字符串中的%s,它将%s与参数列表中相应的参数进行匹配。
对于字符串,参数必须是指定要显示的字符串的指针。

<span style="font-family:KaiTi_GB2312;font-size:24px;">#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>



void main()
{
        char  input[81]; //注意:最多只能包含80个字符
	puts("请输入数据:\n");
	gets(input);
	printf("输入的数据为:\n%s", input);

}</span>



运行结果:



从键盘读取字符串:


gets()函数从键盘读取一个字符串。当gets()函数被调用时,它不断从键盘读取字符,直到
遇到换行符(通过按Enter键生成)为止。如果读取字符串出错,gets()将返回null。


注意:由于并非总知道gets()将读取多少字符,而gets()将不断地存储字符,这可能超出
缓冲区的末尾,因此使用该函数使,,一定要小心。




scanf()使用一个格式化字符串,该字符串告诉它如何读取输入的信息。



<span style="font-family:KaiTi_GB2312;font-size:24px;">#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>



void main()
{
	char input1[255],*ptr1;
	puts("请输入数据:\n");

	if (*(ptr1 = gets(input1)) != NULL)
	{

		//注意:切不可 gets(ptr1);会发生异常,因为ptr1没有初始化。
		printf("你输入的数据为:%s\n",input1);
		puts("用puts()输出数据:");
		puts(ptr1);
	}


	system("pause");

}


</span>


运行结果: