C プログラムでメモリが破損しているようです。以前_ASSERTE( _CrtCheckMemory( ) );
は問題のステートメントを見つけていましたが、そのscep_conf->engine_str = NULL;
直前にある行で途切れています。ということは、私の理解が正しければ、その前の malloc が何かを壊したのではないでしょうか。
したがって、これは問題を引き起こすコードの一部です。
scep_conf = (SCEP_CONF *) malloc(sizeof(scep_conf));
scep_conf->engine = (struct scep_engine_conf_st *) malloc(sizeof(struct scep_engine_conf_st));
scep_conf->engine_str = NULL;
ヘッダーからの定義:
typedef struct {
struct scep_engine_conf_st *engine;
char *engine_str;
} SCEP_CONF;
struct scep_engine_conf_st{
char *engine_id;
char *new_key_location;
int storelocation;
char *dynamic_path;
char *module_path;
int engine_usage;
};
SCEP_CONF *scep_conf;
基本的に、ここでメモリが破損する理由がわかりません。私は C に慣れていないので、私が見ていない明らかな何かがあるかもしれません。
どんな助けでも大歓迎です、ありがとう。