从文件和strcat读取到C中的变量

时间:2017-10-08 02:48:14

标签: c

我正在读取文件并将所有内容保存在名为buff的变量中。如果我使用printf打印出buff,它会打印出所有内容。我尝试将result与其他字符串/字符串变量连接起来,它运行得很好。但是当我用buff strcat / strncat result时,它会进入一个永无止境的循环(它不会打印任何东西,程序永远不会完成)。我不明白为什么。

read(fd[0], buff, 1000);
strcat(result, buff);

我也试过这个,但没有运气

int n = read(fd[0], buff, 1000);
strncat(result, buff, n);

就这样,

read(fd[0], buff, 1000);
strncat(result, buff, sizeof(buff));

1 个答案:

答案 0 :(得分:0)

了解有关OP的C源代码的更多信息非常重要,例如声明变量结果的位置和方式。如果声明结果的方式存在问题,那么这可能就是代码以这种奇怪的方式表现的原因。

在随后的评论中,OP解释说:

  

我如何宣布结果存在问题。它现在正在运作。