Why is this not compiling? This is a C++ morse code decoder program. It has two errors. I have bolded and italicized the errors and messages. #include #include #include struct TREENODE{char letter;TREENODE *left;TREENODE *right;TREENODE() //constructor{letter = β*β; //will replace with letterleft = 0;right = 0;};struct MORSECODE//each morsecode object has english letters{char letter;char code[20]; //dots and dashes and such};class TELEGRAPH //binary tree{private:static MORSECODE table[40];static TREENODE * root;static void destroyTree(TREENODE *node);public:TELEGRAPH(){root = NULL;} // expected unqualified-id at end of input. no return statement in function returning non-void (-Wreturn type)static void buildTree();static void destroyTree();void Encode(char text[], char morse[]);void Decode(char morse[], char text[]);};MORSECODE TELEGRAPH::table[40] = {{βEβ,β.β}, {βTβ, β-β}, {βIβ, β..β}, {βAβ, β.-β}, {βNβ, β-.β}, {βMβ, βββ},{βSβ, ββ¦β}, {βUβ, β..-β}, {βRβ, β.-.β}, {βWβ, β.ββ}, {βDβ, β-..β}, {βKβ, β-.-β},{βGβ, ββ.β}, {βOβ, βββ}, {βHβ, ββ¦.β}, {βVβ, ββ¦-β}, {βFβ, β..-.β}, {βLβ, β.-..β},{βPβ, β.β.β}, {βJβ, β.ββ}, {βBβ, β-β¦β}, {βXβ, β-..-β},{βCβ, β-.-.β}, {βYβ, β-.ββ}, {βZβ, ββ..β}, {βQβ, ββ.-β}, {β0β, ββββ}, {β1β, β.β-β), {β2β, β..ββ},{β3β, ββ¦ββ}, {β4β, ββ¦.-β}, {β5β, ββ¦..β}, {β6β, β-β¦.β}, {β7β, βββ¦β}, {β8β, ββ..β}, {β9β, ββ-.β},{β,β, ββ-β}, {β.β, β.-.-.-β}, {β?β, β..β..β}, {β, βENDβ};TREENODE* TELEGRAPH::root = 0;void TELEGRAPH::Decode(char morse[], char text[]){char *morsePtr;TREENODE *node;node = root;cout << "Decode called." <left;}else if (*morsePtr == β-β){nose = node >right;}}else {node = root;}continue;}*text++ = node-> letter;return;}void TELEGRAPH::Encode(char text[], char morse[]){int i;char c, *t, *morsePtr;cout << "Encode called" << endl;cout <>> β;for (t = text; *t; t++){c = toupper(*t);if (c == β β){*morse++ = β β;continue;}for (i = 0; table[i].letter; i++){if (table[i].letter == c) break;}if (!table[i].letter){continue;}morsePtr = table[i].code;while (*morsePtr){*morse++ = *morsePtr++;}*morse++ = β β;}}void TELEGRAPH::buildTree(){TREENODE *node, *nextNode;char *morsePtr; // point to dots and dashes in tableroot = new TREENODE;if (!root){return;}root -> letter = β β;cout << "Alphabet in Morse:";for (int i = 0; table[i].letter; i++){node = root;for (morsePtr = table[i].code; *morsePtr; morsePtr++)//goes through morse code for symbols and letters{if (*morsePtr == '-'){cout <right = nextNode;node = node->right;}else if (*morsePtr == β.β){cout <left = nextNode;node = node->left;}}}}main():int main(){TELEGRAPH station;char text[80], morse[600];station.buildTree();cout << "Enter telegram in English: ";cin.getline(text, 80);station.Encode(text, morse);cout << morse;cout <>> Receivednnβ;station.Decode(morse, text);cout << "Message sent: " << text << endl;station.destroyTree();} //expected ';' at end of member declaration. expected '}' at end of input. invalid use of qualified name TREEDNODE::TELEGRAPH::table
The post Why is this not compiling? This is a C++ morse code decoder program. It has two appeared first on Get Papers.
Source: My posts