gpt4 book ai didi

c - 阅读 CGI 帖子表格

转载 作者:行者123 更新时间:2023-11-30 15:09:38 25 4
gpt4 key购买 nike

我尝试过使用 fgets(username, 20, stdin); fgets(密码, 20, 标准输入);在将 POST 表单的输入传递给我的 C 程序时接受输入,但它在用户名值的末尾添加 &...我该如何解决这个问题?

我想我的问题是:如何解析用户名和密码的输入,以便我只得到我实际在框中输入的内容,而不是一些困惑的字符串?

最佳答案

这是因为 fgets 将从流中获取多达 19 个字符,在您的情况下它不会在换行符或 '&' 处停止。您可以尝试使用 sscanf 进行格式化输入,如下所示:

#include <stdio.h>

int main(void) {
char *form = "user=foo&password=bar";

char user[32];
char passwd[32];

int ret = sscanf(form, "user=%[^&]&password=%[^&]", user, passwd);
if (ret != 2) {
fprintf(stderr, "invalid form\n");
return 0;
}

printf("user is %s, passwd is %s\n", user, passwd);
return 0;
}

关于c - 阅读 CGI 帖子表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36563076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com