int handle_message(int message_id) { int result = 0; switch (message_id) { case MSG_ID_NOTIFY: route_to_notify_thread (message_id); break; case MSG_ID_SHUTDOWN: case MSG_ID_REBOOT: LOGI("System Message %d =====\n", message_id) send_msg_to_sys_thread(message_id); break; default: LOGE ("===== Kaka Wrone Message %d =======\n", message_id) break; } return result;
时间: 2023-08-31 11:06:23 浏览: 49
这是一个处理消息的函数,接收一个消息ID作为参数。根据消息ID的不同,执行不同的操作。
如果消息ID是MSG_ID_NOTIFY,那么将路由到通知线程进行处理。
如果消息ID是MSG_ID_SHUTDOWN或MSG_ID_REBOOT,那么会打印一条日志信息,然后将消息发送到系统线程进行处理。
如果消息ID不是以上两种情况,则会打印一条错误日志信息。
最后,函数返回一个结果。但是在这个函数中,并没有进行任何实际的操作,因此返回的结果也是0。
相关问题
请指出下面代码的错误 int handle_message(int message_id) { int result = 0; switch (message_id) { case MSG_ ID_NOTIFY: route_to_notify_thread (message_id); break; case MSG_ID_SHUTDOWN: case MSG_ID_REBOOT: LOGI("System Message %d =====\n", message_id) send_msg_to_sys_thread(message_id); break; default: LOGE ("===== Kaka Wrone Message %d =======\n", message_id) break; } return result;}
这段代码的错误在于缺少了每个 case 和 default 后面的冒号,同时在两个 case 语句中缺少了 break 语句。正确的代码应该是:
```
int handle_message(int message_id) {
int result = 0;
switch (message_id) {
case MSG_ID_NOTIFY:
route_to_notify_thread(message_id);
break;
case MSG_ID_SHUTDOWN:
case MSG_ID_REBOOT:
LOGI("System Message %d =====\n", message_id);
send_msg_to_sys_thread(message_id);
break;
default:
LOGE("===== Kaka Wrone Message %d =======\n", message_id);
break;
}
return result;
}
```
需要注意每个 case 和 default 后面都需要加上冒号,而且每个 case 语句都需要加上 break,否则会出现执行多个 case 的情况。
5.请指出下面代码的错误 int handle_message(int message_id) { int result = 0; switch (message_id) { case MSG_ID_NOTIFY: route_to_notify_thread (message_id); break; case MSG_ID_SHUTDOWN: case MSG_ID_REBOOT: LOGI("System Message %d =====\n", message_id) send_msg_to_sys_thread(message_id); break; default: LOGE ("===== Kaka Wrone Message %d =======\n", message_id) break; } return result;
下面代码的错误是在case MSG_ID_SHUTDOWN和case MSG_ID_REBOOT的语句中,缺少了一个分号。正确的代码如下:
```
int handle_message(int message_id) {
int result = 0;
switch (message_id) {
case MSG_ID_NOTIFY:
route_to_notify_thread (message_id);
break;
case MSG_ID_SHUTDOWN:
case MSG_ID_REBOOT:
LOGI("System Message %d =====\n", message_id);
send_msg_to_sys_thread(message_id);
break;
default:
LOGE ("===== Kaka Wrone Message %d =======\n", message_id);
break;
}
return result;
}
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)