代码编译等,但只是在运行时挂起

Ski*_*zit 0 c

我的程序旨在解析文本文件,提取相关数据,然后将其保存在SQL表中.我像这样编译它..

  gcc -o parse parse.c -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient_r
Run Code Online (Sandbox Code Playgroud)

然后我像这样运行...

  ./parse > tweets.rss
Run Code Online (Sandbox Code Playgroud)

但它只是挂起.它不会打印我调试的任何printf.怎么了?这是我的代码......

http://pastebin.com/3R45zyMp

我很感激任何帮助!

tva*_*son 8

您指定它应该写入tweets.rss而不是从中读取.由于你的程序首先从STDIN读取并且你没有提供任何输入,为什么你会期望任何输出?

尝试:

./parse < tweets.rss
Run Code Online (Sandbox Code Playgroud)


Dip*_*ick 5

以下将永远循环.

while(c!= ' ' || c != '\t' || c != '\n' || c != '>'){
    c = getchar(); //Get a new char
    test[i] = c;
    i++;
}
Run Code Online (Sandbox Code Playgroud)

c只能等于其中一个,所以条件总是正确的.