我从Windows迁移到Mac,现在我遇到了文件输入/输出类的问题:ifstream&ofstream.
在Windows中使用g ++ /代码块运行时
ofstream out("output.txt");
out << "TEST";
out.close();
Run Code Online (Sandbox Code Playgroud)
将在同一目录中创建一个新文件"output.txt" .
但是在MAC OS X中,此文件是在我的主目录中创建的:/Users/USER_NAME/output.txt
如何将此文件与可执行文件一起放在同一目录中?
PS我正在使用GCC和CodeBlocks.没有项目 - 我只是编译一个源文件.
这可以以某种方式完成吗?
if((a || b) == 0) return 1;
return 0;
Run Code Online (Sandbox Code Playgroud)
所以就像...如果一个OR b等于零,那么...但它对我不起作用.我的真实代码是:
bool Circle2::contains(Line2 l) {
if((p1.distanceFrom(l.p1) || p1.distanceFrom(l.p2)) <= r) {
return 1;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我无法获得Code :: Blocks附带的默认WxWidget模板进行编译.我收到的错误是error "No Target! You should use wx-config program for compilation flags!(其中包括)
谷歌引导我到一些链接,但我似乎无法搞清楚
我发现了一个类似的主题; http://forums.codeblocks.org/index.php?topic=10122.0
"问题很可能是,你在非标准的目录树中安装了wxwisgets."
wx-config --list
报告:

wx-config --prefix=/opt --list
报告:

它是否正确?我说不出来.
另一个类似的线程 http://www.justlinux.com/forum/archive/index.php/t-105554.html
该主题中的人最终添加g++ 'wx-config --cflags' -o wxTest wxTest.cpp为编译/链接标志,但我尝试将其添加到Code :: Blocks中的"链接器设置 - >其他链接器选项",它似乎没有做任何事情.
链接:

包括:

我发现整个链接器业务非常混乱,我无法弄清楚我在哪里出错了.
完整错误列表:
/var/wxWidgets-2.8.12/include/wx/defs.h|42|error: #error "No Target! You should use wx-config program for compilation flags!"|
/var/wxWidgets-2.8.12/include/wx/gtk/cursor.h|40|error: ISO C++ forbids declaration of ‘GdkCursor’ with no type|
/var/wxWidgets-2.8.12/include/wx/gtk/cursor.h|40|error: expected ‘;’ before ‘*’ token|
/var/wxWidgets-2.8.12/include/wx/gtk/app.h|55|error: ‘guint’ does not name a type| …Run Code Online (Sandbox Code Playgroud) 我已经设法使用Visual Studio 210在Windows 7上构建clang,现在我喜欢将它与codeblocks IDE一起使用.所以我将clang可执行文件复制到mingw bin \文件夹中并更新了codeblock的编译器设置以使用clang而不是gcc.
但是当我编译hello world示例时,我得到以下错误:
||=== clang_test, Debug ===|
obj\Debug\main.o:c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\system_error|447|undefined reference to `std::iostream_category()'|
obj\Debug\main.o:c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\stdexcept|170|undefined reference to `std::exception::exception(char const* const&)'|
||=== Build finished: 2 errors, 0 warnings ===|
Run Code Online (Sandbox Code Playgroud)
我想我必须使用clang的头文件但是如何实现呢?
谢谢!
例如,在Rails gemfile中:
group :development, :test do
gem 'rspec-rails', '~> 2.0'
end
Run Code Online (Sandbox Code Playgroud)
正在发生的事情与do... end语句?并与rspec:
describe "Foo" do
context "bar" do
expect...
end
end
Run Code Online (Sandbox Code Playgroud)
是do... end-s创建一个块,其间的信息正在其他地方使用?如果没有设置块参数,它如何工作?
我今天开始使用SDL并且之前遇到了一些麻烦,现在我已经运行但它不会让我初始化它.
这是我的代码:
#include <iostream>
#include "SDL.h"
#undef main
using namespace std;
int main(){
if(SDL_Init(SDL_INIT_EVERYTHING)<0){
cout << "error starting sdl" << endl;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这个构建日志:
-------------- Build: Debug in Graphics (compiler: GNU GCC Compiler)---------------
mingw32-g++.exe -Wall -g -std=c++11 -IC:\Users\73638G75MA\Documents\SDL2-2.0.3\x86_64-w64-mingw32\include\SDL2 -I"C:\Users\73638G75MA\Documents\C++ projects\Graphics" -c "C:\Users\73638G75MA\Documents\C++ projects\Graphics\main.cpp" -o obj\Debug\main.o
mingw32-g++.exe -LC:\Users\73638G75MA\Documents\SDL2-2.0.3\x86_64-w64-mingw32\lib -o bin\Debug\Graphics.exe obj\Debug\main.o -lmingw32 -lSDL2main -lSDL2
obj\Debug\main.o: In function `main':
C:/Users/73638G75MA/Documents/C++ projects/Graphics/main.cpp:8: undefined reference to `SDL_Init'
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 0 …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 C++ 与简单的服务器和客户端进行网络连接,从一些 Winsock 示例开始。
每当我尝试使用 Code::Blocks 编译服务器时,都会收到以下错误:
||=== Build: Debug in Server Test (compiler: GNU GCC Compiler) ===|
C:\Users\****\Desktop\Programming\CodeBlocks Projects\Server Test\main.cpp|12|warning: ignoring #pragma comment [-Wunknown-pragmas]|
C:\Users\****\Desktop\Programming\CodeBlocks Projects\Server Test\main.cpp||In function 'int main()':|
C:\Users\****\Desktop\Programming\CodeBlocks Projects\Server Test\main.cpp|47|error: 'getaddrinfo' was not declared in this scope|
C:\Users\****\Desktop\Programming\CodeBlocks Projects\Server Test\main.cpp|57|warning: format '%ld' expects argument of type 'long int', but argument 2 has type 'int' [-Wformat]|
C:\Users\****\Desktop\Programming\CodeBlocks Projects\Server Test\main.cpp|58|error: 'freeaddrinfo' was not declared in this scope|
C:\Users\****\Desktop\Programming\CodeBlocks Projects\Server Test\main.cpp|67|error: 'freeaddrinfo' was not declared in this scope| …Run Code Online (Sandbox Code Playgroud) 最后我从开始菜单运行MinGW-w64 Win32 Shell并分别运行以下命令:
吃豆人-Sy吃豆人
吃豆人
吃豆人
在PATH中添加C:\ msys32 \ mingw32 \ bin。
我的问题:
提前致谢。
我不经常写代码。有时我连续 6 个月每天编写代码,然后长达 2 年不编写代码。这种方法迫使我保留一堆我(以及其他更好的程序员)编写的代码或参考代码。时隔很长一段时间,我在写代码时都会提到这个“库”;我读了它,我执行了它,这对我精神焕发有很大帮助。在过去的 5 年里,这个系统对 Eclipse 和 Java 的帮助非常大。
我现在正在学习 C++ 并正在使用 Code::Blocks。我想以某种方式将一堆具有主要方法的 C++ 文件填充到一个 Code::Blocks 项目中。我愿意重写代码来完成这个任务(如果合理的话......)
我不是第一个为这个问题寻找有意义的答案的人:/sf/ask/2514225311/和https://www.reddit.com/r/learnprogramming/comments/3opp5r/how_to_run_multiple_cpp_files_separately_in_same/
我不想更改 IDE 或将其与其他 IDE 进行比较。我正在寻找的是能够快速、轻松地执行 C::B 中可扩展文件树中组织良好的数百个小程序之一。如果我将每个带有 main 的 C++ 文件放在它自己的项目中,我将拥有如此多的 C::B 项目,这是不合理的。
我确实了解 C::B 不是 Eclipse,C++ 也不是 Java,并且 C::B 旨在为每个项目提供一个带有主函数的单个 c++ 文件。
任何答案,甚至非常有创意的答案将不胜感激!脚本、设置、如何重写我的代码等等 - 如果您有建议,我很乐意听到,以便我考虑。
为了充分披露,目前我将所有小程序保存在目录中,并使用操作系统钻取目录,只需双击 C::B 打开的 .cpp 文件即可。我愿意大幅修改我的代码以实现目标。
谢谢你的时间。