C ++如何确保命令参数的每个字符都是十进制数字?

问题描述 投票:-1回答:1

我们必须编写代码以加密凯撒的密码。步骤之一是:而不是打印出提供的命令行参数,而是程序检查以确保该命令行参数的每个字符都是十进制数字(即0、1、2等),并且,如果不是,则在打印消息用法:./caesar键后终止。但是,如果参数仅由数字字符组成,则应将该字符串(即使这些字符串恰好看起来像数字,也应将argv转换为字符串数组)转换为实际整数,然后通过%i打印出该整数与printf。下面的代码是我所拥有的,但是它同时返回成功和错误。如何解决此问题,以便程序检查命令行参数的每个字符是否都是数字?Code I have

c command-line-arguments digits atoi
1个回答
0
投票

[isdigit应用于包含字符代码的int,但首先尝试将isdigit(atoi(argv[1]))转换为整数,所以这是错误的]

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