91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么將字符串與功能宏進行綁定

發布時間:2021-10-19 15:48:31 來源:億速云 閱讀:102 作者:iii 欄目:web開發

本篇內容主要講解“怎么將字符串與功能宏進行綁定”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么將字符串與功能宏進行綁定”吧!

1 代碼原理說明

利用switch和case的散轉功能,宏作為散轉條件,每一個宏對應一種功能,將宏和字符串進行綁定,這樣通過比較字符串的方式,就能獲得對應宏的功能代碼。

此代碼的好處是宏代碼不用變的情況下,字符串和功能宏的對應是可以根據需要進行隨意調整的。

代碼結構清晰,易于維護。

2 實現源碼

1)實現代碼

一切說明,盡在注釋中啦!代碼可以理解為等級評定吧,實際意義不大,大家多關注這個小代碼的結構吧!

#include <stdio.h> #include <stdlib.h>  // 功能宏散轉編號  #define ONE_STAR    1 #define TWO_STAR    2 #define THREE_STAR  3 #define FOUR_STAR   4 #define FIVE_STAR   5  #define ZERO        0    // 無效輸入返回值    /* 定義查找對應表結構及查找表數組 */ static struct lookuptable  {      char *str;   // 指向字符串       int code;    // 對應宏功能碼  }tab[]= {           // 字符串口與功能指示紅的對應表,可以根據需要隨意調整,下面的1-5可以換為任意字符串,只是輸入時(查找時)也要一一對應上       {"1", ONE_STAR},       {"2", TWO_STAR},      {"3", THREE_STAR},      {"4", FOUR_STAR},      {"5", FIVE_STAR} };   // 查找函數聲明 SearchFunc(char *s);   int main(int argc, char *argv[])  {         int score = 0;       char str[10] = "\0";            printf("Please input number 1-5 to evaluate: ");         gets(str);         // 根據星級進行處理,這里就是簡單的賦值,實際應用中可以根據需要更多        switch(SearchFunc(str))       {            case ONE_STAR:            {                 score += 1;                 break;            }                   case TWO_STAR:            {                 score += 2;                 break;            }                 case THREE_STAR:           {                score += 3;                break;           }              case FOUR_STAR:           {                score += 4;                break;           }              case FIVE_STAR:           {                score += 5;                break;           }                   case ZERO:  // 無效的情況,打印無效提升            {                printf("\nYour input is invaild!\n");                break;           }          }          // 輸入有效才進行星級打印       if(SearchFunc(str)!=ZERO)      {           printf("\nThe score is: %d\n",score);      }        return 0; }   /* 宏功能查找函數 */   SearchFunc(char *s) {       int i;          for(i=0; i< sizeof(tab)/sizeof(tab[0]); i++)       {             if(strcmp(tab[i].str, s)==0)             {                   return tab[i].code;             }       }         return ZERO;     // 輸入不再范圍內標記為0  }

2)運行結果

① 輸入值在有效范圍1-5時,結果如下:

怎么將字符串與功能宏進行綁定

② 輸入值不在有效范圍內時,結果如下:

怎么將字符串與功能宏進行綁定

到此,相信大家對“怎么將字符串與功能宏進行綁定”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

得荣县| 万安县| 承德市| 二手房| 天气| 富平县| 桂东县| 泰安市| 隆化县| 平顶山市| 府谷县| 渑池县| 白水县| 邵武市| 遂溪县| 基隆市| 开原市| 聊城市| 博乐市| 沁水县| 栾城县| 舟山市| 庆安县| 江都市| 滨海县| 东丽区| 恭城| 施甸县| 北海市| 阜南县| 铁岭市| 辉南县| 惠水县| 化州市| 常州市| 尉犁县| 南靖县| 石阡县| 景宁| 临颍县| 潼关县|