このディレクトリの索引
http://toro.2ch.net/test/read.cgi/tech/1370255305/782
#  読み込むiniファイルのセクション名を、string配列にpushし続けて、 
#  セクション名すべてpushしたらループから外れるって仕組みなんですけど、tmp = strtok_s()の代入がうまくいきません 
#  どうしたらいいですか 
#   
#   char SectionNames[1024]; 
#   GetPrivateProfileSectionNames(SectionNames,1024,FilePath.c_str()); 
#   
#   char *WTF;//謎の内部パラメータ,strtok_sの仕様 
#   vector<string> SquadNameList; 
#   SquadNameList.push_back(strtok_s( SectionNames, "0" ,&WTF)); 
#   
#   for(int i=0; i < SquadNameList.size();i++){ 
#    char tmp[256]; 
#    tmp = strtok_s( NULL, "0" ,&WTF); 
#    if( tmp != NULL){ 
#     SquadNameList.push_back(tmp); 
#    } 
#   } 
# 
# 

'読み込むiniファイルのセクション名を、string配列にpushし続けて、
セクション名すべてpushしたらループから外れるって仕組みなんですけど、
tmp = strtok_s()の代入がうまくいきませんどうしたらいいですか'(_iniファイル,_セクション名ならび) :-
        読み込むiniファイルの(_iniファイル,_iniファイル文字ならび),
        'セクション名を、string配列にpushし続けて、セクション名すべてpushしたらループから外れる'(_iniファイル文字ならび,[],_セクション名ならび).

読み込むiniファイルの(_iniファイル,_iniファイル文字ならび) :-
        get_chars(_iniファイル,_iniファイル文字ならび).

'セクション名を、string配列にpushし続けて、セクション名すべてpushしたらループから外れる'(_iniファイル文字ならび,L1,_セクション名ならび) :-
        セクション名を(_iniファイル文字ならび,_セクション名,_セクション名後の文字ならび),
        'セクション名を、string配列にpushし続けて、セクション名すべてpushしたらループから外れる'(_セクション名後の文字ならび,[_セクション名|L1],_セクション名ならび).
'セクション名を、string配列にpushし続けて、セクション名すべてpushしたらループから外れる'(_iniファイル文字ならび,_セクション名ならび,_セクション名ならび).

セクション名を(_iniファイル文字ならび,_セクション名,_セクション名後の文字ならび) :-
        append(L0,['['|_セクション名からの文字ならび],_iniファイル文字ならび),
        'L0に[も]も存在しない'(L0),
        append(L0_1,[']'|_セクション名後の文字ならび],_セクション名からの文字ならび),
        'L0_1に]が存在しない'(_セクション名後の文字ならび),
        atom_chars(_セクション名,_セクション名後の文字ならび).

'L0に[も]も存在しない'(L0) :-
        \+(member('[',L0)),
        \+(member(']',L0)),!.

'L0_1に]が存在しない'(L0_1) :-
        \+(member(']',L0_1)).