gcc编译错误如何看
‘壹’ gcc编译错误
在 C 语言中不支持如下风格,从键盘输入一个整数 n,就动态定义一个大小为 n 的结构数组:
int n;
scanf("%d",&n);
st a[n];
应该写成:
#define MAX 20
#include <stdio.h>
int main( )
{
int n ;
st[MAX] ; /*定义元素个数为 MAX 的结构数组 */
scanf("%d",&n) ; /* 变量 n 只能够在以后的代码中用作别的用途 */
...... /* 以后的代码省略 */
}
‘贰’ gcc编译错误!
提示是说编译的时候加上参数-fPIC,和你做的完全不一样。
当输入文件为.c、.cxx、.cpp等等时,gcc先编译后链接
当输入文件是.o时gcc只执行连接步骤。
应该的命令行类似:
gcc -c -fPIC palindrome.c -o palindrome.o
‘叁’ 如何获得gcc编译错误时的输出内容
在Windows环境下,直接输出重新向不行。
安装C-Free4.0(免费版),用它打开你的C源代码文件
c:\1.c,编译,在窗口下方就会给出错误提示信息,鼠标右键单击提示信息,选择“全部复制”,打开记事本,粘贴,另存该文件
c:\1.txt
就可以了。
另外,C-Free
4.0
用的是
MinGW
2.95
的编译器,也是GCC的一个版本。
‘肆’ gcc编译出现错误怎么办
有时候我们编译一个大的项目的时候,会出现很多错误使得屏幕堆满了很多无用的信息。一般情况下我们需要找到首次出现错误的地方,在gcc中添加编译选项可以使编译停止在第一次出现错误的地方:
$ gcc -Wfatal-errors foo.c // GCC 4.0 and later$ g++ -Wfatal-errors foo.cpp
$ g++ -fmax-errors=N foo.cpp // 在出现第 N 此错误的时候停止编译,GCC 4.6 and later
‘伍’ 关于gcc编译出错的问题!
段错误,肯定是非法使用指针。检查你的指针是不是越界了吧。
程序很乱,刚看清楚,b指针指向的字符串是const类型,是不能被修改的,所以你的函数是错误的!