検索結果 8 件

by コハク
9年前
フォーラム: C言語何でも質問掲示板
トピック: VC++ segmentation fault
返信数: 1
閲覧数: 1580

VC++ segmentation fault

プログラム '[3940] Project2.exe' はコード 1 (0x1) で終了しました。
VisualStudio2013で上のようなエラー(?)が出ました。
cygwingでコンパイルして実行すると*** starting debugger for pid 5248, tid 1108
というエラーが出ます。
cygwinでgdbが使えないのでsegmentation faultが出る原因を特定する方法か,原因を教えてください。
by コハク
9年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタを使った2次元配列のコピー 
返信数: 2
閲覧数: 1715

Re: ポインタを使った2次元配列のコピー 

ありがとうございます!
参照のほうのやり方で解決できました!
**&(変数名)という風な書き方は知らなかったのでとても勉強になりました.

ポインタのほうは
ポインタはデリートできません
*parents とnew_geneは異なる型です
と出てきたため使うことを断念しました.
by コハク
9年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタを使った2次元配列のコピー 
返信数: 2
閲覧数: 1715

ポインタを使った2次元配列のコピー 

void Merge(double **parents,int size,int size_2){ double **new_gene=new double*[size]; for(int i=0;i<size;i++){ *(new_gene+i)=new double[size_2]; } //new_geneの要素を並び替える操作 //コピー parents=new_gene; } int main(){ double **p=new double*[10]; for(int i=0;i<10;i++){ *(p+i)=new double[2]; } Merge(p,10,2);  ...
by コハク
9年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタによる配列の指定 実行しても出力されない
返信数: 3
閲覧数: 2162

Re: ポインタによる配列の指定 実行しても出力されない

すみません.
解決しました.
このループで初期化していたところがあったのですが,

コード:

(*(rule_old+p))[q]=0
としなければいけないところを

コード:

*(rule_old+p)=0
と書いていたためにループが回らなかったようです.
by コハク
9年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタによる配列の指定 実行しても出力されない
返信数: 3
閲覧数: 2162

Re: ポインタによる配列の指定 実行しても出力されない

すみません.
pのループが抜けていました

コード:

for(int p=0;p<N;p++){
    for(int q=0;q<rule_n;q++){//rule_n=1296
        cout<<"&&&"<<endl;
        if((*(rule_old+p))[q]==0){continue;}
        cout<<"?"<<endl;
        count++;
    }
}
by コハク
9年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタによる配列の指定 実行しても出力されない
返信数: 3
閲覧数: 2162

ポインタによる配列の指定 実行しても出力されない

for(int q=0;q<rule_n;q++){//rule_n=1296 cout<<"&&&"<<endl; if((*(rule_old+p))[q]==0){continue;} cout<<"?"<<endl; count++; } この処理を出力すると &&& &&& ? と出力されます. このループ以前で問題の配列を出力すると cout<<(*(rule_old+p))[1]<<endl; 結果は 1 と出力されました. ポインタの使い方が悪いのでしょうか? 出来るだけ処理を軽くしたいので, 配列で書き直さずにすむ方法はないでしょうか?
by コハク
9年前
フォーラム: C言語何でも質問掲示板
トピック: while文とsystemの組合せ
返信数: 4
閲覧数: 2052

Re: while文とsystemの組合せ

すみません.次からは気をつけます. ifstream ifs("ls_data.txt"); string str; char buff[200]; int count=0; while(getline(ifs,str)){ sprintf(buff,"g++ point.cpp & ./a data/%s data_tra.txt data_tra_check.txt",str.c_str()); system(buff); Sleep(2000); cout<<count<<" "<<str.c_str()<<endl; count++; if(count==10){break;} } 一...
by コハク
9年前
フォーラム: C言語何でも質問掲示板
トピック: while文とsystemの組合せ
返信数: 4
閲覧数: 2052

Re: while文とsystemの組合せ

ありがとうございます!
&を;に直したところループの重複がなくなりました.

>cygwin 上で実行していますね。
はいcygwinで実行しています

>point.cpp を毎回コンパイルするのは無駄な気がします。
その通りでした. 実行時間を短くするためにもwhile文から出そうと思います.

詳細検索ページへ移動する