我使用 win-builds 安装了 MinGW-w64。一切正常,但是当我使用编译文件时
gcc -Wall -o prog.exe main.c
我收到这个错误
cc1.exe: fatal error: Files/win-builds-1.5.0/include: No such file or directorycompilation terminated.
我已经更新了 gcc 路径。当我尝试在 eclipse 上构建时,我遇到了同样的错误。win-builds 放置所有文件的位置是C:\Program Files\win-builds-1.5.0\并且文件夹\include\存在。
我的猜测是,cc1.exe试图访问C:\Program Files\win-builds-1.5.0\include,但由于某种原因,它是分离C:\Program的Files\win-builds-1.5.0\include。
编辑:
这是要编译的代码
/*
* main.c
*
* Created on: 13/06/2018
* Author: haslima
*/
#include <stdio.h>
int main()
{
printf("Hello World");
return 1;
}
Run Code Online (Sandbox Code Playgroud)
编辑:
当我运行时,gcc -v -c -o prog.exe main.c我得到这个输出:
Reading specs from c:/program …Run Code Online (Sandbox Code Playgroud) 我正在学习C,我遇到了指针.尽管我在本教程中学到的东西比从教科书中学到的东西还要多,但我仍然对这些教程有所了解.
如果我编程这个
#include <stdio.h>
int main()
{
char *ptr_str;
ptr_str = "Hello World";
printf(ptr_str);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
结果是
Hello World
Run Code Online (Sandbox Code Playgroud)
我不明白编译时是怎么回事,因为指针ptr_str直接指向文本而不指向文本的第一个字符.我以为只有这样才行
#include <stdio.h>
int main()
{
char *ptr_str;
char var_str[] = "Hello World";
ptr_str = var_str;
printf(ptr_str);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
所以在第一个例子中我是如何直接指向文本的?