• 締切済み

malloc()関数内でセングメント例外が発生する

mo_ariesの回答

  • mo_aries
  • ベストアンサー率25% (1/4)
回答No.2

noname#6581さんの言うとおり、多分そこに至るまでの処理が問題でしょうね。 公開して問題の無い程度でソースの一部(流れが分かる事)を載せてみては如何でしょうか? 使用している変数の定義、初期化処理、代入処理等 mallocを使用している付近で関係しているものをトレースしてみるのも手だと思います。 特に直前にコールするサブルーチンがあればそこで破壊している可能性もありますね。

関連するQ&A

  • 56.comという動画共有サイトからダウンロードしたFLVが再生できない。

    www.56.com という動画共有サイトからダウンロードしたFLV形式の動画が、GOM Playerで再生できません。再生しようとすると ・再生に必要なコーデックがインストールされているか確認してください や、 ・メディアファイルが損傷されていないか確認してください などのメッセージがでます。 他のYouTubeなどからダウンロードしたFLVは再生できます。 ちなみにこれが失敗したバイナリ情報です。↓ -------------------- BINARY INFO -------------------- FileName : abcecw@56.com_56flv_121716955033x.flv Header Data : 46 4c 56 01 01 00 00 00 09 00 00 00 09 09 00 26 FLV............& 60 1f 52 c0 00 00 00 00 12 00 00 86 40 80 a0 00 `.R.........@... 83 12 aa 24 f1 51 27 8a ff ff cc 54 54 54 53 ff ...$.Q'....TTTS. fe 62 82 82 62 7f ff f3 14 14 13 13 81 ff 98 a0 .b..b.......... a0 98 9f ff fc c5 05 05 04 ff ff e6 28 28 26 29 ............((&) ff ff 31 41 41 41 4f ff f9 8a 0a 0a 09 ff ff cc ..1AAAO......... 50 50 4c 4f ff fe 62 82 82 62 7f ff f3 14 14 13 PPLO..b..b..... 13 ff 81 98 a0 a0 98 9f fc 0c c5 05 04 c4 ff e0 ................ 66 28 28 26 27 ff 03 20 a0 a0 96 3c 4f fe 0a 62 f((&'.. ...<O..b 82 82 62 9f f0 53 14 15 14 14 ff 81 98 b0 b0 a8 ..b..S.......... af fc 0c a2 e2 22 e2 2e ff ff 58 b1 7d b1 c3 f4 ....."....X.}... 7f 8e 1e 04 15 75 51 71 f3 2f 0f f4 48 2f 57 f3 ....uQq./..H/W. 10 47 df f8 f4 f9 f2 11 2f ff 9e b7 dc 79 90 40 .G....../....y.@ aa ed f7 f4 75 61 a2 31 f8 8c f8 37 f5 9f 7c bc ....ua.1...7..|. 03 7e d1 7f e5 4a 79 23 f4 10 65 cf 89 2a e1 09 .~..Jy#..e..*.. f8 f4 14 72 12 a2 83 00 e5 74 4b a9 1d 13 af 7d ...r.....tK....} 5a 34 80 1b f5 54 be 00 79 7a 8f 36 3b 7a 5f 95 Z4...T..yz.6;z_. 97 ff f3 d4 03 44 be dc 36 84 3e 06 06 2c 4b 21 .....D..6.>..,K! 56 55 73 ea aa d5 d1 47 df 5e 8e 10 69 78 40 cd VUs....G.^..ix@. 08 62 4f ed e9 b5 20 60 3c 04 bf 02 94 be 90 a4 .bO... `<....... 83 00 dd 77 e5 c0 d1 c1 b2 06 71 8a 5e f4 79 eb ...w......q.^.y. 3f 06 01 a8 03 44 45 75 c9 05 c0 82 01 ff 06 00 ?....DEu........ 3c 4b 1f d1 fd 1e c6 be cb 9b 9e a6 5c 0c 0c 98 <K..........\... 96 47 18 a5 ef 27 9c 35 03 01 e4 08 20 c1 7b 09 .G...'.5.... .{. 63 52 c0 40 2f 57 f0 84 5d 7f 6f ee 76 d6 de e6 cR.@/W..]o.v... 60 0c 00 77 02 11 71 14 47 9e f9 5d 41 d8 f2 e0 `..w..q.G..]A... 41 81 06 97 5a 10 84 bf 97 7e 31 e3 24 03 f0 6f A...Z....~1.$..o ef 5d 2e 06 01 c8 18 07 10 50 fb ca c2 08 96 de .].......P...... 65 7a 58 30 0d e0 1a 01 e5 c3 f9 15 09 6a fd e1 ezX0.........j.. e4 bc a6 50 c0 34 18 00 fc 08 6a 84 91 f4 e5 fc ...P.4....j..... 1e c1 7a b0 30 0d 77 44 99 9d cf 49 70 9e 20 eb ..z.0.wD...Ip. . fd b1 cf 63 f0 20 80 68 f6 5a 10 47 f9 b3 4e a9 ...c. .h.Z.G..N. どうしたら再生できるかどなたか教えてください。 お願いします。

  • マクロアゼンブラが分かる人

    MASMを勉強していて困っています。 指定されたセグメントのコードを表示するプログラムを作成中ですがオフセットアドレスとセグメントアドレスが取得できません。 あと表示方法を ADDRESS |00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F ---------+----------------------------------------------- 0000:0000 |9E 0F C9 00 69 04 70 00 16 00 F0 11 69 04 70 00 0000:0010 |69 04 70 00 54 FF 00 F0 FF 90 00 F0 53 FF 00 F0 のようにしたいのですが ADDRESS |00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F ---------+----------------------------------------------- 0000:0000 |9E  0000:0000|0F  0000:0000|C9 0000:0000|00 のようになっていて困っています助けてください。

  • 2つのvoid関数でmallocを使うと2step目でセグメントエラーが出る

    プログラムのmainを見やすくするためにサブルーチンとしてvoid関数を使っているのですが、その中でmallocでメモリを確保して配列を作ろうとするとエラーが出てしまいます。概略を書くと #include <stdio.h> #include <math.h> #include <stdlib.h> //voidの宣言 void a(double* ,double*, double,); void b(double* ,double*, double,); main(){ double *c,*d,e; double *f,*g,h; c=(double *)malloc(sizeof(double)*N) //Nは適当な整数です d,f,gも同様の処理 色々な作業 while(適当回数繰り返します){ a(c,d,e); b(f,g,h); 色々な作業 } } void a (double* c, double* d, double e){ double **i,*j,; int k; i=(double **)malloc(sizeof(double *)*M) //Mは適当な整数です for(k=0;k<=M;k++){ i[k]=(double *)malloc(sizeof(double)*M) //Mは適当な整数です } jも同様にメモリ確保 様々な作業(逆行列の計算など) } void bはaとほとんど同じです。 mallocで二次元配列や配列を作っています。勿論同じ文字は使っていません。 以上のようなプログラムでgccは通ります。でも実行するとwhile内での1step目は上手くいくのですが、2step目のb内での始めの(double *)malloc(sizeof(double)*L)(Lは適当な整数です)で、つまりメモリ確保でセグメントエラーが出ます。両者とも片方を削るとエラーは出ません。1step目は何故上手くいくのか、2ステップ目で何故ダメなのかが分かりません。皆様の御教授をお願いします。

  • Excelのファイルが開かない

    エクセルのファイルなのですが、開こうとすると以下のようなダイヤログボックスが開き、結局強制終了する事になります。どなたかお答えいただけますでしょうか? EXCEL のページ違反です。 モジュール : EXCEL.EXE、アドレス : 0167:30301d24 Registers: EAX=00c124ac CS=0167 EIP=30301d24 EFLGS=00010206 EBX=00c11d34 SS=016f ESP=00629580 EBP=00c11cd0 ECX=0000030f DS=016f ESI=20290400 FS=3a27 EDX=000030ff ES=016f EDI=00000001 GS=323e Bytes at CS:EIP: 0f bf 4e 22 3b f9 7c ec 0f bf 46 24 3b f8 7d e4 Stack dump: 0062ae56 0062ce6e 006295c4 00000000 30301c1c 301cc949 000030ff 00000001 00000000 00000006 00000000 0062ae50 00000100 00000007 00000044 00000001

  • Norton Internet Securityインストール時エラーが発生しインストールできず!

    OSがMEのパソコンでNorton Internet Security2005インストール時に下記のようなエラーが発生してインストールできない状況です。 再度繰り返しても同じエラーが表示されます。 回答のほどよろしくお願い致します。 Internal エラー 2908. {12ED2D07-8DEF-43FF-8C44-4F3AD17001A1} Internal エラー 2908. {F6DA73BD-43B8-4263-8D2A-F159632E440D} Internal エラー 2908. {78451C05-F6C4-4B41-A80E-5F60B87C6E62} Norton Internet Security 2005 をインストールできませんでした。再びインストールを試みますか?

  • 森山直太朗の「レスター」のレスターって誰?

    森山直太朗の「レスター」という曲があります。 途中で唐突にレスターという人物がでてきます。 これは何者なんでしょうか? さっぱり分りません。 http://www.utamap.com/showkasi.php?surl=B03948&title=%A5%EC%A5%B9%A5%BF%A1%BC&artist=%BF%B9%BB%B3%C4%BE%C2%C0%CF%AF&ss=%BF%B9%BB%B3%C4%BE%C2%C0%CF%AF%2F%B8%E6%C5%CC%C4%AE%C2%FC&sk=%BF%B9%BB%B3%C4%BE%C2%C0%CF%AF どなたか教えてください。

  • outlook express5の強制終了について

    htmlメールを開こうとすると、下記メッセージが出て、強制終了してしまいます。どういうことでしょうか?初心者ですので、できましたら詳しく教えていただけますか。よろしくお願い致します。 ------------------------------- MSIMN のページ違反です。 モジュール : MCSCAN32.DLL、アドレス : 0177:02684401 Registers: EAX=40744655 CS=0177 EIP=02684401 EFLGS=00010206 EBX=00005000 SS=017f ESP=0056ae60 EBP=53256e3d ECX=0056c8b4 DS=017f ESI=04530030 FS=43af EDX=53256e3d ES=017f EDI=045125c4 GS=439e Bytes at CS:EIP: 83 38 00 75 d9 85 d2 75 08 31 c0 5d 5f 5e 59 5b Stack dump: 0056b94e 045125c4 0056bda4 045125c4 00002710 0269b2d1 00005000 045125c4 0269b37f 00000000 0000ff50 026a061b 6d74683c 0a0d3e6c 683c0a0d 3e646165

  • Excel:関数

     A B C D E F G H 1  あ い 51  か い 2  あ か 14  あ い 3  あ お 24 4  か い 54 5  か さ 22 6  あ い 66 7  か い 56     ・      ・     ・ このような表があるとします。 H1,H2に、それぞれの合計を出したいです。 例えば「か い」(F1,G1)だと、 B4、C4とB7,C7に合致する項目があるので 54+56で110となりH1には110と表示されます。 これを、関数を使って求めたいんですが… どなたか教えて下さい。

  • 森山直太朗の歌詞で「もはや僕は人間じゃない」の意味は?

    森山直太朗の歌で「生きとし生ける物へ」があります。 最後が「ぼくはもはや人間じゃない」で結ばれるのですが、この意味がよくわかりません。 人間じゃない=人間以上の存在という意味でしょうか? それとも人間以下のつまらない存在だという意味でしょうか? 途中までは「僕は君が思うような人間じゃない」となっているのですが、最後には先ほどの歌詞になります。 この変貌はどう説明されますか? よろしくお願いします。 歌詞はここを参考に。 http://www.utamap.com/showkasi.php?surl=B06272&title=%C0%B8%A4%AD%A4%C8%A4%B7%C0%B8%A4%B1%A4%EB%CA%AA%A4%D8&artist=%BF%B9%BB%B3%C4%BE%C2%C0%CF%AF&ss=%BF%B9%BB%B3%C4%BE%C2%C0%CF%AF%2F%B8%E6%C5%CC%C4%AE%C2%FC&sk=%BF%B9%BB%B3%C4%BE%C2%C0%CF%AF

  • エクセル関数でグループ単位に集計を行う

    エクセル初心者です。 入力伝票データを元に、集計シートに自動的に品名コード順の合計を作成したいのですが、うまくできません。 データシートのデータをソートせずに関数だけで出来る方法をお教えください。 ※エクセルはExcel2003を使用しています。 《データシート》例 [見出し] A1:年月日,B1:伝票番号,C1:品名コード,D1:数量,E1:単価,F1:金額 [データ] A2:2008/10/1,B2:Z-001,C2:S0001,D2:3,E2:1,000,F2:3,000 A3:2008/10/1,B3:Z-002,C3:S0002,D2:1,E3:2,000,F3:2,000 A4:2008/10/1,B4:Z-003,C4:S0003,D4:2,E4:3,000,F4:6,000 A5:2008/10/2,B5:Z-004,C5:S0002,D5:1,E5:2,000,F5:2,000 A6:2008/10/2,B6:Z-005,C6:S0001,D6:3,E6:1,000,F6:3,000 A7:2008/10/3,B7:Z-006,C7:S0003,D7:2,E7:3,000,F7:6,000 《集計シート》例 [見出し] A1:品名コード,B1:伝票数,C1:数量計,D1:合計金額 [集計値] A2:S0001,B2:2,C2:6,D2: 6,000 A3:S0002,B3:2,C3:2,D3: 4,000 A4:S0003,B4:2,C4:4,D4:12,000 ※品名コードは固定せず、データシートに入力されたものだけを集計したい