找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10789|回復(fù): 10
收起左側(cè)

關(guān)于switch語句的使用,請高手進(jìn)來看看!

[復(fù)制鏈接]
ID:51349 發(fā)表于 2013-6-28 14:55 | 顯示全部樓層 |閱讀模式
請大神看看這段代碼問題在哪里呢?
switch(key_mode)

{
case 0:        
//        _nop_;
//        _nop_;

if(!key_add)
Vset1++;
if(!key_sub)
Vset1--;

Iset=(float)Vset1/1000;
break;

case 1:        
//        _nop_;
//        _nop_;

if(!key_add)
Vset2=Vset2-5;

Vset2=Vset2+5;


Tset=(float)Vset2/1000;
break;
}
謝謝指導(dǎo)!

回復(fù)

使用道具 舉報

ID:51349 發(fā)表于 2013-6-28 14:57 | 顯示全部樓層
自己先說下:調(diào)試的時候提示switch表達(dá)式有 illegal type
大家看是哪里的問題呢。
回復(fù)

使用道具 舉報

ID:7485 發(fā)表于 2013-6-28 20:39 | 顯示全部樓層
case 0:        
{//        _nop_;
//        _nop_;

if(!key_add)
Vset1++;
if(!key_sub)
Vset1--;

Iset=(float)Vset1/1000;
break;

}
回復(fù)

使用道具 舉報

ID:7485 發(fā)表于 2013-6-28 20:46 | 顯示全部樓層
根據(jù)你的程序,可能“break;”需要放大括號外面。
回復(fù)

使用道具 舉報

ID:51325 發(fā)表于 2013-6-29 10:53 | 顯示全部樓層
ahshmj 發(fā)表于 2013-6-28 20:46
根據(jù)你的程序,可能“break;”需要放大括號外面。

按你說的試了下
還是不行的
回復(fù)

使用道具 舉報

ID:7485 發(fā)表于 2013-6-29 18:38 | 顯示全部樓層
我說的是在每一個“case ”里面都要加大括號,你加了還是不行?
回復(fù)

使用道具 舉報

ID:51325 發(fā)表于 2013-6-30 10:43 | 顯示全部樓層
ahshmj 發(fā)表于 2013-6-29 18:38
我說的是在每一個“case ”里面都要加大括號,你加了還是不行?

是的,我在每一個case里面都加了啊。還是同樣的問題
回復(fù)

使用道具 舉報

ID:7485 發(fā)表于 2013-6-30 15:56 | 顯示全部樓層
本帖最后由 ahshmj 于 2013-6-30 17:19 編輯

switch(key_mode)

{
case 0:        
//        _nop_;
//        _nop_;

if(!key_add)
Vset1++;
if(!key_sub)
Vset1--;

Iset=(float)Vset1/1000;
break;

case 1:        
//        _nop_;
//        _nop_;

if(!key_add)
Vset2=Vset2-5;
else                                 //不知道你的本意,但好像不應(yīng)少這一行         
Vset2=Vset2+5;


Tset=(float)Vset2/1000;
break;
}

紅色的是同一個變量的筆誤?
回復(fù)

使用道具 舉報

ID:7485 發(fā)表于 2013-6-30 17:14 | 顯示全部樓層
像這類問題,請求幫助時,最好將程序完整的傳上來。

按上面的改過來,應(yīng)該是沒問題的(我已測試過),但是如果里面牽涉到一些本小段以外的諸如變量或函數(shù)的說明、定義等,就難說了。比如“Iset" iset Tset ,都會出錯。(提示肯定是不一樣的了)
回復(fù)

使用道具 舉報

ID:51325 發(fā)表于 2013-7-4 22:10 | 顯示全部樓層
剛剛試了下,不行的。我什么時候把全文發(fā)上來大家再看看吧。
多謝樓上的幾位了。
回復(fù)

使用道具 舉報

ID:51503 發(fā)表于 2013-7-5 23:10 | 顯示全部樓層
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表