タグ

2011年5月15日のブックマーク (1件)

  • C/APIで文字列操作をして色々ハマったこと - YAMAGUCHI::weblog

    はじめに こんにちは、Python界の情弱です。最近C/APIを使ってモジュールを書くブームがきているわけですが、まあPythonで文字列を扱うのが大学3年の嫌々やった演習以来ということで全然出来ない。というわけでハマったところをメモしました。特にメモリ周りはC/APIならではのポイントも有りました。 危険なコード 次のコードが色々と危険をはらんでいるのでキチンと対応する必要があると教わった。 buffer = realloc(buffer, old_size * 2); reallocに関する注意 失敗する可能性 reallocは失敗するとNULLになってしまい、その時realloc前にmallocされた領域は解放されないままになってしまうので、freeする術がなくなってしまう。必ず戻り値をチェックすること。まして上記のようなコードにしてしまうと、もとのアドレス触れなくなってしまうので絶

    C/APIで文字列操作をして色々ハマったこと - YAMAGUCHI::weblog
    Surgo
    Surgo 2011/05/15