0

この C++ プログラムが動作しない理由がわかりません。ヘルプ!

#include <iostream>
#include <cstdlib>
#include <cmath>
using namespace std;
int main (int argc, char* argv[])
{
    // convert the text argv[1] to double using atof:
    double r = atof(argv[1]);
    double s = sin(r);
    cout << "Hello, World! sin(" << r << ")=" << s << endl;
    // success
    return 0;
}

報告:

"/usr/bin/gmake" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
gmake[1]: Entering directory /home/aleksandar/NetBeansProjects/CppApplication_2'
"/usr/bin/gmake" -f nbproject/Makefile-Debug.mk dist/Debug/GNU_Compiler_Collection-Linux-x86/cppapplication_2
gmake[2]: Entering directory /home/aleksandar/NetBeansProjects/CppApplication_2
mkdir -p build/Debug/GNU_Compiler_Collection-Linux-x86
rm -f build/Debug/GNU_Compiler_Collection-Linux-x86/main.o.d
g++ -c -g -MMD -MP -MF build/Debug/GNU_Compiler_Collection-Linux-x86/main.o.d -o build/Debug/GNU_Compiler_Collection-Linux-x86/main.o main.cpp
mkdir -p dist/Debug/GNU_Compiler_Collection-Linux-x86
g++ -o dist/Debug/GNU_Compiler_Collection-Linux-x86/cppapplication_2 build/Debug/GNU_Compiler_Collection-Linux-x86/main.o
gmake[2]: Leaving directory `/home/aleksandar/NetBeansProjects/CppApplication_2'
gmake[1]: Leaving directory `/home/aleksandar/NetBeansProjects/CppApplication_2'

BUILD SUCCESSFUL (total time: 613ms)

RUN FAILED (exit value 1, total time: 78ms)

/usr/local/netbeans-7.2.1/ide/bin/nativeexecution/dorun.sh: line 33: 7673 Segmentation fault sh "${SHFILE}" Press [Enter] to close the terminal ...

アップデート:

私はその大学の教授に連絡しましたが、彼が私に言った解決策は次のとおりです

。unix / Linux環境でコードを実行したい場合は、コンパイルしてリンクした後に次のように言う必要があります。
c++ -o test.x test.cpp
次に、コードを次のように実行します
./test.x 0.4

出力は次の
Hello, World! sin(0.4)=0.389418
とおりですが、コンパイラのコンソールに 0.4 を入力する方法を知っている人はいますか?

4

4 に答える 4

2

argv[1]の場合のみ有効ですargc >= 2。コードでそれを確認する必要があります。

Andは、コマンド ライン引数を指定してプログラムを実行した場合argcよりも大きくなります。1

于 2013-03-07T23:45:43.583 に答える
-1

!!!解決しました!!!

プローブは次のとおりです。gdbのバグ動作するにはintel64/idbに変更する必要がありました!!!

私はそれらを実行するためにすべての異なるコンパイラとプログラムを試しました(Netbeans、Eclipse、Qt Creator .....)

変更したとき:gdb-> idb

機能した!!!

バグが報告されています: http ://sourceware.org/bugzilla/show_bug.cgi?id = 15257

于 2013-03-08T21:14:34.190 に答える