小编Ant*_*Ant的帖子

gcc 4.2编译器的新手问题(Mac OSX):fpu_control.h:没有这样的文件或目录

我试图用c/c ++编译程序,但收到错误信息:

fpu_control.h:没有这样的文件或目录

从谷歌,我发现这个问题是关于浮点精度的处理方式.我读到并非gcc的所有发行版都包含fpu_control.h.

这是我唯一能找到的东西.我已经广泛搜索,找不到任何地方下载这个fpu_control.h.有人可以帮忙吗?

谢谢你们.

c c++ gcc fpu

7
推荐指数
1
解决办法
3448
查看次数

Mac OS X上的scp问题:scp不喜欢文件名中的空格,"\"修复不起作用

我正在尝试使用scp在两台Mac之间传输文件(OS 10.6.8).但它失败了,因为我的目录/文件名中有空格.我无法更改目录/文件名.

我在Mac终端上工作时经常使用\符号表示空格.但是,在这种情况下,它无法正常工作.我非常感谢有关如何处理这个的任何提示.谢谢.

这是我正在做的一个例子,以防我在某处犯了一个愚蠢的错误:

scp -r me@myWork:../../My\ documents/Projects/Project\ 1/* ./Desktop

Error: scp: ../../My: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我也尝试过rsync,但这也不起作用:

rsync -avub -e ssh me@myWork::../../My\ documents/Projects/Project\ 1/* ./Desktop

rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at /SourceCache/rsync/rsync-40/rsync/io.c(452)
Run Code Online (Sandbox Code Playgroud)

macos ssh scp path

7
推荐指数
2
解决办法
6526
查看次数

C++新手问题 - 使用try,throw,catch进行基本错误处理

我试图理解C++中的错误处理.

我已经读过使用try,throw,catch比使用带有返回值的if语句更好的样式和简单.但我不确定我是否真的理解如何尝试,抛出,抓住工作.我在下面做了一个简单的例子,很高兴获得有关任何问题或不良风格的反馈.我的目标是从检查另一个计算结果的示例中创建一个函数.

以下是关于try,throw,catch的问题:(1)catch语句是否应该包含在我的函数中?或者它应该在其他地方,例如在main()或初始计算的函数中?

(2)使用try,catch,throw这个简单的东西(我希望改进我的风格)是否过度?

(3)如果有错误,我想终止程序.我该怎么办?或者"捕获"是否意味着自动完成?

(4)我不明白使用cerr.为什么不使用cout?我在这里正确使用过cerr吗?我是否也应该在if/else语句中使用它?

非常感谢您的帮助.

这是我做的例子:

double calculated = 10.2; // from previous calculation
double tolerance = 0.3; // I can set this in this function
double valueWanted = 10.0; // from previous calculation

const int calcError = 5; // I picked this number randomly to use for indicating an error

try
{
   if (fabs(fTargetValue - fCalculated) <= fTolerance)
     cout << "Result is within range.";

   else
     cout << "Failed.";
     throw calcError;
}

catch (const int calcError)
{
   cerr …
Run Code Online (Sandbox Code Playgroud)

c++ exception-handling

5
推荐指数
1
解决办法
2175
查看次数

使用cell2mat将数字矩阵与字符串向量(列标签)连接起来的问题

我是Mac用户(10.6.8),使用MATLAB处理计算结果.我输出大型数字表到.csv文件.然后我在EXCEL中使用.csv文件.一切正常.

问题是每列数字都需要一个标签(一个字符串标题).我无法弄清楚如何将标签连接到数字表.我非常感谢任何建议.以下是一些可能有用的进一步信息:

我的标签包含在一个单元格数组中:

    columnsHeader = cell(1,15)
Run Code Online (Sandbox Code Playgroud)

我用计算结果填写; 例如:

    columnsHeader{1}  = propertyStringOne (where propertyStringOne = 'Liq')
Run Code Online (Sandbox Code Playgroud)

每个计算的标签序列都不同.我的第一次尝试是尝试直接连接标签:

    labelledNumbersTable=cat(1,columnsHeader,numbersTable)
Run Code Online (Sandbox Code Playgroud)

我收到一个错误,连接类型需要相同.所以我尝试使用cell2mat转换标签/字符串:

    columnsHeader = cell2mat(columnsHeader);
    labelledNumbersTable = cat(1,columnsHeader,numbersTable)
Run Code Online (Sandbox Code Playgroud)

但这需要所有单独的标签,并使它们成为一个长字...这导致:

??? 使用==> cat时出错

CAT参数维度不一致.

有没有人知道一种替代方法,可以让我保留我的原始单元格标签?

csv file-io matlab concatenation

5
推荐指数
2
解决办法
3661
查看次数

C++ newbie:我的循环应该改变一个字符串,然后将字符串打印到一个文件.但它是添加到字符串

我编写了用于执行计算的C++代码.代码中有一个循环.在每个循环结束时,我想:

1)获取时间,计算结果.

2)为文件命名.名称应包含时间.

3)将文件名打印到外部文件中.每个新循环都应覆盖上一循环中的文件名.

我遇到的第一个问题是我无法删除OLD文件名.所以当我的计算结束时,名称是(例如):calculationForRestartFile_0.0005476490.004925880.01763170.04375820

而不是:calculationForRestartFile_04375820

我已经更新了这个问题以纳入Mat的建议.谢谢你.但是现在我在外部文件中没有得到任何东西.谁能看到我哪里出错了?我会非常感谢任何建议.

// Above loop:
  std::string  filename = "calculationForRestartFile_";  // Part of the file name that ALL files should have
  ofstream fileNameAtHighestTimeStream;    

  std::string       convertedToString;                  // This and the line below:
  std::stringstream storeNumberForConversion;           // For storing a loop number/time as a string

// Inside loop:
    storeNumberForConversion << global_time << flush;       // Turn the time/loop number into a string that can be added to the file name for a particular loop
    convertedToString = storeNumberForConversion.str();

    fileNameAtHighestTimeStream.open ("externalFile", ios::out …
Run Code Online (Sandbox Code Playgroud)

c++ string streaming iostream

3
推荐指数
1
解决办法
641
查看次数

C++新手问题:设计一个函数来返回字符串或双重过载或模板的向量?

我编写了一个在文本文件中搜索名称的函数.它返回向量,其中向量的每个元素是不同的名称.

现在我想在同一个文本文件中搜索数字并在向量中返回数字.

这可能是一个愚蠢的问题,但我想知道最好的方法是什么.通过编写第二个函数来重载函数,该函数返回向量或通过将类型替换为T来将我已经写入的函数转换为模板,如向量中所示.

我感到困惑的模板选项的原因是,我不知道,如果字符串和数值类型,如双和INT是在模板兼容.任何提示将不胜感激!谢谢.

c++ templates overloading

2
推荐指数
1
解决办法
1896
查看次数

链接Linux gcc上的错误4.3.4:与"jpeg"库相关的"未定义引用"(例如,未定义引用`jpeg_std_error(jpeg_error_mgr*)')

我正在使用已经开发了几年的大型C++代码.我已添加到代码中并已在Mac OX 10.7.5上成功运行它.但是,它非常慢,我现在想在集群上运行它(g ++(SUSE Linux)4.3.4 [gcc-4_3-branch revision 152973]).就C++而言,我不是很有经验,就处理编译/链接而言,我是一个完整的新手.

我无法通过与"jpeg"库相关的链接错误,并且非常感谢任何帮助.我将库代码安装在我的代码所在的目录中,但我的理解是它也可以从编译器获得.

有很多错误输出,所以我不会发布它.这是第一部分:

/data/place/number/account/program/libraries/libfile_intel.a(Grid.o):在功能program::Grid<double>::SaveToJPG(char const*, int, bool, bool) const': Grid.cpp:(.text._ZNK3program20GridIdE9SaveToJPGEPKcibb[program::Grid<double>::SaveToJPG(char const*, int, bool, bool) const]+0x499): undefined reference to jpeg_std_error(jpeg_error_mgr*)" Grid.cpp :( text._ZNK3program20GridIdE9SaveToJPGEPKcibb [程序::网格:: SaveToJPG(字符常量.*,int,bool,bool)const] + 0x4b5):未定义的引用`jpeg_CreateCompress(jpeg_compress_struct*,int,unsigned long)'

我尝试过的:

  • 当我在Google上搜索这个问题时,我从旧的论坛帖子中发现jpeg库在C中编译.这显然会导致C++编译器弄乱名称.我不清楚这意味着什么,但我按照建议添加:

extern"C"{
#include"jpeglib.h"}

在我的jpeg目录中包含"#include"jpeglib.h的所有文件中."我写道,"jpeglib.h"因为,正如我所提到的,我有一个包含jpeg代码的目录.但是,我也尝试过使用默认提供的jpeg代码,我收到一条消息,说它在集群编译器上不可用.

  • 在我的makefile中,我检查了所有包含和路径.这些似乎不是问题.此外,我有类似的路径,包括在其他目录中的其他库,他们很好.

  • 我还在我的编译器选项列表中添加了:-lstdc ++(来自另一个旧论坛帖子的建议).它没有效果.

我做的一个奇怪的观察是,当我"完成"整个代码(各个目录中的几个库)时,jpeg库不会生成,除非我专门进入其目录并在那里"make".正如我所说,代码太大了,不能发布这个来证明我没有路径错误.我很确定我没有,但这种行为似乎很奇怪.

如果有人在这篇长篇文章后仍然和我在一起,我将非常感谢任何提示.谢谢.

编辑:在我的makefile中,这是我编译/链接的内容:

CC = g ++

OPTIONS = -O3 -fpermissive -w -DSAMG_UNIX_LINUX -DSAMG_LCASE_USCORE -DNDEBUG -DCSP_WITH_SAMG_SOLVER

编辑2:Svens建议的结果

我做了:

找/ usr/opt -iname libjpeg*so*

得到了:

/usr/lib/libjpeg.so.62

/usr/lib/libjpeg.so.62.0.0

/usr/lib64/libjpeg.so.62

/usr/lib64/libjpeg.so.62.0.0

/usr/lib64/libjpeg.so找到:

/usr/lib64/mozilla': Permission denied find: / usr/lpp/mmfs/gui/runtime':权限被拒绝@ login1:/ data/place/number/account/program/support_libraries/jpeg> cd …

c++ linux macos linker cluster-computing

2
推荐指数
1
解决办法
1万
查看次数

为什么我的Qt应用程序执行时不显示GUI?

我已经获得了带有.pro文件的C ++ / C代码,以便在Qt中进行编译(这是一个大型,混乱的代码,因此我想使用Qt和提供的.pro文件)。

该代码旨在生成GUI。我可以在Qt中编译它而没有任何错误(在Mac OS X 10.7.5和Mac OS X 10.8上都可以),并且可以看到可执行文件。但是,当我单击它时,什么也没有发生。当我通过命令行以常规方式运行它时,什么也没有发生。这是我正在尝试的运行命令:

./calc.app/Contents/MacOS/calc

exec ./calc.app/Contents/MacOS/calc(此结果导致输出:[处理完成])。

在.pro文件(下面)中,我看不到任何似乎表明我想要GUI的信息。但是,我在Qt帮助站点上了解到,不需要在.pro文件中指定GUI模块,因为它是自动包含的。也许我误会了什么?

.pro文件是否有问题?

TEMPLATE = app
LANGUAGE = C++
TARGET = calc
VERSION = 3.1.0

CONFIG -= qt
CONFIG += warn_on
CONFIG += debug
#CONFIG += windows
CONFIG += console

DEFINES += IPMGEMPLUGIN
DEFINES += NOPARTICLEARRAY

!win32 {
  DEFINES += __unix
}

GMS_CPP = ../GMS
GMS_H   = $$GMS_CPP

DEPENDPATH +=
DEPENDPATH += .
DEPENDPATH += $$GMS_H

INCLUDEPATH +=
INCLUDEPATH += .
INCLUDEPATH += $$GMS_H

QMAKE_LFLAGS +=
OBJECTS_DIR …
Run Code Online (Sandbox Code Playgroud)

c++ macos user-interface qt

2
推荐指数
1
解决办法
1224
查看次数