c - 有没有办法使用 08 和 09 并消除八进制常量错误中的无效数字 "8"?

标签 c

我收到此错误:-八进制常量中的数字“8”无效,我阅读了其背后的原因,并且正如每个人建议的那样,我不应该使用 08,而不是这个,我应该简单地使用 8。虽然我正在制作与程序相关的程序到公历,我必须以 DD/MM/YYYY 格式输入,所以对于月份,我必须给出 08 和 09。那么有什么方法可以使用它吗?我在开关盒中使用 08 和 09。

switch (month){
    case 01:
        month =0;
        break;
    case 02:
    case 03:
        month =3;
        break;
    case 04:
        month =6;
        break;
    case 05:
        month =1;
        break;
    case 06:
        month = 4;
        break;
    case 07:
        month = 6;
        break;
    case 08:
        month = 2;
        break;
    case 09:
        month = 5;
        break;
    case 10:    
        month = 0;
        break;

...

最佳答案

将您的输入视为字符串,而不是数字。然后将字符串转换为数字。

关于c - 有没有办法使用 08 和 09 并消除八进制常量错误中的无效数字 "8"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43327819/

相关文章:

ARM 中基于堆栈的结构的调用约定?

c - 从 C 数组中排除唯一值

条件检查 scanf () 或获取输入

c - strcmp 在 c 中的 while 循环中不起作用

c - 后续函数调用中的 malloc

python - PyImport_Import 失败 - 返回 NULL

c - 在 C 中将非常大的数字存储在整数中

c - 如何将无符号长整型拆分并重新组合为有符号短整型?

python - 什么更快 : multiple `send` s or using buffering?

C - 为什么我的数组被覆盖了?