my二月兰 发表于 2014-8-12 15:40:39

VS2005字符串接收问题,请教大虾们?

如图所示,基本的字符接收问题,在vs2005上就是不正常,是程序问题还是vs2005的问题呢?好奇怪{:dizzy:}

street 发表于 2014-8-12 15:59:41

是把回车 也可当作是一个字符了吧?

lcofjp 发表于 2014-8-12 16:05:57

改成scanf_s("%s\n", str_1);试试。
这绝对不是VS2005的问题,是标准库的规定。

my二月兰 发表于 2014-8-12 16:08:16

street 发表于 2014-8-12 15:59
是把回车 也可当作是一个字符了吧?

不是的,我发现原因了,就是不能用scanf_s这个函数,只能用scanf函数,虽然vs2005推荐用,虽然scanf函数有一堆警告,但的确不会出错。其他的程序我也都试了,的确是这样。具体原因是什么,不知道,但至少结果是这样的

my二月兰 发表于 2014-8-12 16:10:51

lcofjp 发表于 2014-8-12 16:05
改成scanf_s("%s\n", str_1);试试。
这绝对不是VS2005的问题,是标准库的规定。

不可以,我目前试了,只能是用scanf函数是正确的。

lcofjp 发表于 2014-8-12 16:24:09

my二月兰 发表于 2014-8-12 16:10
不可以,我目前试了,只能是用scanf函数是正确的。

是这样用的
char a;
char b;

int _tmain(int argc, _TCHAR* argv[])
{
        scanf_s("%s", a, 100);
       
        scanf_s("%s", b, 100);

        printf("a=%s, b=%s", a, b);
        return 0;
}

my二月兰 发表于 2014-8-12 17:13:17

lcofjp 发表于 2014-8-12 16:24
是这样用的

非常感谢哦{:tongue:}
页: [1]
查看完整版本: VS2005字符串接收问题,请教大虾们?