switch语句使用总结

xiaoxiao2021-02-27  552

switch语句使用总结

背景

        程序里的if-else太多,代码显得乱、逻辑不清晰。这时使用switch语句代替if-else结构的语句是个不错的选择。

switch的语法如下

       switch(表达式的值){

              case值1 :

              语句;

              break;

       case 值2 :

              语句;

              break;

       case 值3 :

              语句;

              break;

       default:

              break;

       }

 switch语句注意事项

        1)case标号必须是整型常量表达式,并且case标号不能具有相同的值,否则编译错误。

        2)如果表达式的值与其中一个case标号的值匹配,则程序将从该标号后面的第一个语句开始依次执行各个语句,直到switch结束或遇到break语句位置。

        3)如果所有case标号与switch表达式的都不匹配,并且default标号存在,则执行default标号后面的语句。

 

举例说明

        下面的代码是根据返回值生成错误信息。代码是nginx模块中的代码。主要作用是根据retVal变量的值,根据其不一样的值生成不同的错误信息并返回。

int retVal = function(); ngx_str_t response=ngx_string(""); string error; switch (retVal){ case -1: error ="{\"result\":-1}"; break; case -2: error = "{\"result\":-2}"; break; case 0: error ="{\"result\":0}"; break; case 1: error= "{\"result\":1}"; break; default: break; } response.len = error.length(); response.data = (u_char *)error.c_str();

总结

       使用switch语句代替if-else结构的语句是个不错的选择。

转载请注明原文地址: https://www.6miu.com/read-590.html

最新回复(0)