【发布时间】:2010-04-07 19:58:13
【问题描述】:
当我编译一个简单的Hello World!在我的本地 Debian lenny x64 上使用 sscanf 函数的程序,它可以工作。但是当我将相同的程序上传到运行 CentOS x86 的服务器上时,它就不起作用了。如果我不使用 sscanf,那么该程序可以在两台计算机上运行。
gcc -std=c99 -O2 -pipe -m32
如果我用 sscanf 编译它但没有 -std=c99,那么它可以在两台计算机上运行。
gcc -O2 -pipe -m32
CentOS x86 上的 sscanf 和 c99 有什么问题?我认为使用 -m32 标志编译可以在所有 Linux 上工作? (我对 CentOS 服务器的访问权限有限,因此我无权访问错误消息。)
【问题讨论】:
-
您可能应该使用
sscanf()函数在代码周围显示几行代码,并稍微描述一下“它不起作用”的确切含义。 -
“有效”与“无效”并不是对问题的有意义的描述。