C++ 电话号码字母拨号程序 - 语法错别字?还是非 ASCII 字符?

问题描述 投票:0回答:2

我发布这段代码主要是为了查看我的代码中是否存在非 ASCII 字符。我应该考虑使用十六进制编辑器吗?或者是否有完全不同的东西阻止我编译我的代码?我完全迷路了,什么也没注意到。这是错误输出:

||=== Build: Debug in as13 (compiler: GNU GCC Compiler) ===|
C:\Users\NK\Documents\CS110\as13\main.cpp|10|error: stray '\223' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|10|error: stray '\224' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|15|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|15|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|18|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|18|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|21|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|21|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|24|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|24|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|27|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|27|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|30|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|30|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|33|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|33|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|36|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|36|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|39|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|39|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|42|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|42|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|45|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|45|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|48|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|48|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|51|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|51|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|54|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|54|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|57|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|57|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|60|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|60|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|63|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|63|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|66|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|66|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|69|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|69|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|72|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|72|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|75|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|75|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|78|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|78|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|81|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|81|error: stray '\222' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|84|error: stray '\221' in program|
C:\Users\NK\Documents\CS110\as13\main.cpp|84|error: stray '\222' in program|
||More errors follow but not being shown.|
||Edit the max errors limit in compiler options...|
||=== Build failed: 50 error(s), 0 warning(s) (0 minute(s), 0 second(s))
===|
#include <iostream>
#include <string>
using namespace std;
int main()
{

int digit;
char letter;

cout << “Enter a single letter: ” << endl; // <-- Line 10
cin >> letter;

switch (letter){

case ‘a’:
    digit = 2;
    break;
case ‘b’:
    digit = 2;
    break;
case ‘c’:
    digit = 2;
    break;
case ‘A’:
    digit = 2;
    break;
case ‘B’:
    digit = 2;
    break;
case ‘C’:
    digit = 2;
    break;
case ‘d’:
    digit = 3;
    break;
case ‘e’:
    digit = 3;
    break;
case ‘f’:
    digit = 3;
    break;
case ‘D’:
    digit = 3;
    break;
case ‘E’:
    digit = 3;
    break;
case ‘F’:
    digit = 3;
    break;
case ‘g’:
    digit = 4;
    break;
case ‘h’:
    digit = 4;
    break;
case ‘i’:
    digit = 4;
    break;;
case ‘G’:
    digit = 4;
    break;
case ‘H’:
    digit = 4;
    break;
case ‘I’:
    digit = 4;
    break;
case ‘j’:
    digit = 5;
    break;
case ‘k’:
    digit = 5;
    break;
case ‘l’:
    digit = 5;
    break;
case ‘J’:
    digit = 5;
    break;
case ‘K’:  //
    digit = 5;
    break;
case ‘L’:   // <-- Line 84
    digit = 5;
    break;
case ‘m’:
    digit = 6;
    break;
case ‘n’:
    digit = 6;
    break;
case ‘o’:
    digit = 6;
    break;
case ‘M’:
    digit = 6;
    break;
case ‘N’:
    digit = 6;
    break;
case ‘O’:
    digit = 6;
    break;
case ‘p’:
    digit = 7;
    break;
case ‘q’:
    digit = 7;
    break;
case ‘r’:
    digit = 7;
    break;
case ‘s’:
    digit = 7;
    break;
case ‘P’:
    digit = 7;
    break;
case ‘Q’:
    digit = 7;
    break;
case ‘R’:
    digit = 7;
    break;
case ‘S’:
    digit = 7;
    break;
case ‘t’:
    digit = 8;
    break;
 case ‘u’:
    digit = 8;
    break;
 case ‘v’:
    digit = 8;
    break;
 case ‘T’:
    digit = 8;
    break;
 case ‘U’:
    digit = 8;
    break;
 case ‘V’:
    digit = 8;
    break;
 case ‘w’:
    digit = 9;
    break;
 case ‘x’:
    digit = 9;
    break;
 case ‘y’:
    digit = 9;
    break;
 case ‘z’:
    digit = 9;
    break;
 case ‘W’:
    digit = 9;
    break;
 case ‘X’:
    digit = 9;
    break;
 case ‘Y’:
    digit = 9;
    break;
 case ‘Z’:
    digit = 9;
    break;

 }

 cout << "digit is " << digit << endl;
 return 0;

 }
c++ switch-statement
2个回答
1
投票

您使用非 ASCII 字符

而不是 ASCII
"
作为字符串引号,并且您使用非 ASCII
而不是
'
字符引号。不要那样做。


0
投票

我同意其他答案。为什么不尝试使用在线 C++ 编译器?我不知道你是怎么得到其他类型的引号而不是普通的 " 的。也许,在在线编译器上再次输入它,它应该可以工作。此外,由于大写字母和小写字母具有不同的 ASCII 值,所以从逻辑上讲你的程序是正确的。唯一的问题是@jwodder正确指出的引号。

© www.soinside.com 2019 - 2024. All rights reserved.