Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * file: translator.c
- * date: July, 2012
- * purpose: bites chain of symbols to chain of (symbol, symbol's class)
- * author: Nick K.
- */
- #include "modules.h"
- void translator(char chain[], struct transl_type translChain[])
- {
- char symbol;
- int i = -1;
- while ( (symbol = chain[++i]) != '\0' ){
- translChain[i].symbol = symbol;
- if ( (symbol >= 'a' && symbol <= 'z') || (symbol >= 'A' && symbol <= 'Z') ){
- translChain[i].symbol_class = "letter";
- continue;
- }
- if (symbol >= '0' && symbol <= '9'){
- translChain[i].symbol_class = "digit";
- continue;
- }
- switch (symbol) {
- case ':': translChain[i].symbol_class = "colon";
- break;
- case '=': translChain[i].symbol_class = "equals";
- break;
- case ';': translChain[i].symbol_class = "semicolon";
- break;
- case '+':case '-':
- translChain[i].symbol_class = "sign";
- break;
- case '[': translChain[i].symbol_class = "bracket_o";
- break;
- case ']': translChain[i].symbol_class = "bracket_c";
- break;
- case ' ': translChain[i].symbol_class = "space";
- break;
- default: translChain[i].symbol_class = "error";
- break;
- }
- }
- translChain[i].symbol = '\0';
- translChain[i].symbol_class = '\0';
- return;
- }
Advertisement
Add Comment
Please, Sign In to add comment