c语言指针编写函数output input使其功能分别于gets和puts相同
时间: 2024-04-17 11:26:00 浏览: 98
要实现与`gets`和`puts`相同功能的函数,你可以使用指针作为参数,并在函数内部对指针进行操作。下面是一个示例代码:
```c
#include <stdio.h>
void my_gets(char* str) {
int c;
while ((c = getchar()) != '\n' && c != EOF) {
*str++ = c;
}
*str = '\0';
}
void my_puts(const char* str) {
while (*str != '\0') {
putchar(*str++);
}
putchar('\n');
}
int main() {
char input[100];
printf("Enter a string: ");
my_gets(input);
printf("Output: ");
my_puts(input);
return 0;
}
```
在上面的代码中,`my_gets`函数接受一个字符指针作为参数,并使用`getchar`逐个字符读取输入的字符串,将字符依次存储到指针所指向的内存位置中,直到遇到换行符或文件结束符为止。最后,它在字符串末尾添加一个空字符来表示字符串的结束。
`my_puts`函数接受一个字符指针作为参数,并使用`putchar`逐个字符输出,直到遇到空字符为止。最后,它输出一个换行符来结束这行字符串的输出。
在`main`函数中,我们使用`my_gets`函数读取输入的字符串,并使用`my_puts`函数输出该字符串。
请注意,这只是一个简单的示例,没有对输入的字符串长度进行检查,请确保输入的字符串不会超过指定的数组大小。
阅读全文