
こんにちは。
以下のプログラムで s1 = "3ba9e...."の時、
for(i=0; i < (int)(s1Len/2); i++)
{
cc = s1.GetAt(2*i);
c2 = s1.GetAt(2*i+1);
}
1回目 cc=3 c2=0, 2回目 cc=a c2=b ・・・
という順序で取られていきます。
不思議な事にデバッグビルドでは正しく取られるのに、リソースビルドでこの現象がおきるのです。
解決策、あるいは回避策をご存知の方、ご教授願えないでしょうか。困っています。
ちなみに c2 = s1.GetAt(2*i+3) としたところ、1回目だけが正しく取れず cc=3 c2=0, 2回目以降は正しく取れました。
No.1ベストアンサー
- 回答日時:
うーん,わたしなら,OutputDebugString()とかで,i, s1, cc, c2 等のトレースを取りながら実行してみます.前スレによると,これはあるコードの一部を抜き出したもののようなので,他のコードが悪影響している可能性があるからです.
# GetAt() がリリース時に範囲チェックを行なわないのは,単純に速度を重視したためでしょう.
参考URL:http://www.nitoyon.com/vc/tutorial/debug/win32.htm
この回答への補足
回答ありがとうございます。
チェックした結果、ccとc2のアドレスが隣り合っていた事 + '\0'が終端に確保されていなかった為に、変数使用側で誤作動を起こしていたと思われます。失礼しました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フィルターかけた後、重複を除...
-
Nullの使い方が不正です。
-
1日に1人がこなせるプログラム...
-
access2003 クエリSQL文に...
-
エクセルに見えない文字(JISX0...
-
JANコードとPOSコードは同じ?
-
PreviewKeyDownイベントが2回...
-
Accessでの抽出で完全一致。
-
Excel VBA素人です。VBAで図形...
-
Excelシート上で右クリックがで...
-
Exel VBA 別ブックから該当デ...
-
SQL
-
AccessでReplace関数を使うときに…
-
access2021 VBA メソッドまたは...
-
エクセル VBA 同じ内容のセル...
-
Accessの文字列部分一致を合計...
-
COBOLの文法
-
レポートでグループレベルの変...
-
VBAでファイルオープン後にコー...
-
UWSCでMOUSEORG関数が上手く処...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フィルターかけた後、重複を除...
-
access2021 VBA メソッドまたは...
-
1日に1人がこなせるプログラム...
-
JANコードとPOSコードは同じ?
-
1、Rstudioで回帰直線を求める...
-
access2003 クエリSQL文に...
-
Exel VBA 別ブックから該当デ...
-
JavaScriptの定数名が取り消し...
-
COBOLの文法
-
VBAでファイルオープン後にコー...
-
変数名「cur」について
-
エクセルに見えない文字(JISX0...
-
オートフィルタで抽出結果に 罫...
-
Nullの使い方が不正です。
-
PreviewKeyDownイベントが2回...
-
【VB6】実行ファイルとした後、...
-
Javaの改行について
-
C# コードビハインドについて
-
Excelシート上で右クリックがで...
-
木偏に「久」
おすすめ情報