编程要求:模仿gets()和fget(),自己编写一个函数MyGets(),用于从标准输入流读取字符串。

#include<stdio.h>
char *MyGets(char *p, int n);
int main(void)
{
	char str[10] = {0};
	printf("请输入字符串");
	MyGets(str, 10);
	printf("%s", str);
	return 0;
}

char *MyGets(char *p, int n)
{
	int i = 0;
	*(p+n-1) = '\0';
	*(p+n-2) = '\n';
	for(i=0; i<n-2; ++i)
	{
		*(p+i) = getchar();
		if('\n' == *(p+i))
		{
			for(++i; i<n-1; ++i)
			{
				*(p+i) = '\0';
			}
		}
	}
	return p;
}

函数,数组,指针相结合的程序练习_编程