2011-12-05 43 views
1

我調試Android應用程序,我看到跨過在eclipse調試視圖:變量和運算符在賦值中似乎被忽略。什麼可以做到這一點?

int bottom, right; 
    bottom = 800; 
    right = 480; 
    float h ,v; 
    h = right/86.0f; 
    v = bottom/116.0f; 

值在調試視圖表示,H = 86.0和v = 116.0

所以它的調試器顯示正確的值?什麼可以做到這一點?提示2:如果我改變文字86.0f,比如說54.0f,那麼h = 54.0,並且v相同
提示2:這些值在調試視圖中正確,當應用運行正常時,但是沒有時它不會(異常捕獲,應用程序完成和SEGV_MAPERR)這似乎很久之後發生這種代碼,並受此影響h和v的這個不正確的值。

+0

基本理智:源代碼是否與正在運行的應用程序同步?你在破解哪一行代碼之前? –

+0

請如何知道它是否不同步?在顯示的代碼之前,斷點處於一行。這是另一個簡單的任務。 – mamuso

+1

我不認爲你寫了'h = right/h'和'v = bottom/v'的代碼稍後會有一些? :-P – ruakh

回答

0

我不是很確定,但似乎我面臨Dalvik限制。玩了一下代碼,出現了一個VerifyError,這導致我到this link。在減少我的較大方法中的變量數量並拆分它們之後,問題似乎消失了。

相關問題