Я новый пользователь C++ в системе Windows 8. Я установил MinGW и установил переменные среды. Я создаю простейший Hellow мировой код, как показано нижеКомпиляция кода C++ с IDE, ошибка во второй раз
#include<iostream>
#include<vector>
using namespace std;
int main(int argc, char **argv)
{
cout<<"hello world"<<endl;
return 0;
}
Он хорошо работает в первый раз, но когда я делаю некоторые небольшие изменения, например, удалить «привет», а затем построить и запустить проект снова. Я обнаружил, что программа будет работать без конца. Командная строка продолжает показывать:
Current working directory: C:\Users\cr\Documents\project\helloworld\Debug
Running program: le_exec.exe ./helloworld
Если я пытаюсь построить его снова, он показывает
make.exe[1]: Entering directory 'C:/Users/cr/Documents/project/helloworld'
C:/Users/cr/MinGW/bin/g++.exe -c "C:/Users/cr/Documents/project/helloworld/main.cpp" -g -O0 -Wall -o ./Debug/main.cpp.o -I. -I.
C:/Users/cr/MinGW/bin/g++.exe -o ./Debug/helloworld @"helloworld.txt" -L.
c:/users/cr/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: cannot open output file ./Debug/helloworld.exe: Permission denied
collect2.exe: error: ld returned 1 exit status
make.exe[1]: *** [Debug/helloworld] Error 1
helloworld.mk:78: recipe for target 'Debug/helloworld' failed
make.exe[1]: Leaving directory 'C:/Users/cr/Documents/project/helloworld'
make.exe: *** [All] Error 2
Makefile:4: recipe for target 'All' failed
====1 errors, 0 warnings====
Я не мог даже удалить исполняемый файл «HelloWorld.exe», потому что он использует в «System ', пока я не перезагружу компьютер.
Update: я могу скомпилировать его в командной строке:
C:/Users/cr/Documents/project/helloworld>g++ main.cpp -o test.exe
C:/Users/cr/Documents/project/helloworld>test.exe
Он будет продолжать работать, пока я не закрыть окно командной строки. Если я открою новое окно командной строки и снова скомпилирую файл. Нет проблем.
Обновление2: Проблема также возникает, когда я компилирую файл cpp второй раз, даже если файл не был отредактирован.
C:/Users/cr/Documents/project/helloworld>g++ main.cpp -o test.exe
C:/Users/cr/Documents/project/helloworld>test.exe
hello world
C:/Users/cr/Documents/project/helloworld>g++ main.cpp -o test2.exe
C:/Users/cr/Documents/project/helloworld>test2.exe
Он продолжает работать здесь.
* но если у вас есть небольшая модификация * - пожалуйста, покажите нам эту «небольшую модификацию». Не просто описывайте это. – PaulMcKenzie
Например, я редактирую эту строку: cout << "hello world" << endl; измените его на cout << "world" << endl; – user5657822
Нечетные и своеобразные. Проходит ли с помощью отладчика какие-либо подсказки о том, где его повесили? – user4581301