C 中是否有一个函数与 Python 中的 raw_input 功能相同?

2024-04-05

有没有一个C函数可以做同样的事情raw_input在Python中?

#in Python::
x = raw_input("Message Here:")

我怎样才能用C写出这样的东西?

Update::

我做了这个,但出现错误::

#include<stdio.h>
#include<string.h>
#include "stdlib.h"

typedef char * string;

int raw_input(string msg);
string s;
string *d;

main(){
raw_input("Hello, Enter Your Name: ");
d = &s;
printf("Your Name Is: %s", s);

}

int raw_input(string msg){
string name;
printf("%s", msg);
scanf("%s", &name);
*d = name;
return 0;
}

错误是程序运行并打印消息,并通过 scanf 获取用户输入的内容,但随后它挂起并退出.. ??


您可以很容易地编写一个,但您需要小心缓冲区溢出:

void raw_input(char *prompt, char *buffer, size_t length)
{
    printf("%s", prompt);
    fflush(stdout);
    fgets(buffer, length, stdin)
}

然后像这样使用它:

char x[MAX_INPUT_LENGTH];
raw_input("Message Here:", x, sizeof x);

您可能想要添加一些错误检查等等。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C 中是否有一个函数与 Python 中的 raw_input 功能相同? 的相关文章

随机推荐