所以我决定学习C语言,并使用“用困难的方式学习C语言”来学习。无论如何,我尝试编辑其中一个示例,但输出结果并不是我预期的。我从命令行调用程序为e14 asd,它“应该”打印出:
'e' == 101
'a' == 97
's' == 115
'd' == 100
但是,它根本没有打印出'd'行。我的代码如下:
我猜问题与argv部分有关,但是经过查找,我仍然不知道是什么导致了'd'没有出现。
如果有人能解释一下,我会非常感激。
谢谢!
但是,它根本没有打印出'd'行。我的代码如下:
#include <stdio.h>
#include <ctype.h>
void print_letters(int argc, char *arg[])
{
int i = 0;
int j = 0;
for(j = 0; j < argc; j++) {
for(i = 0; arg[i] != '\0'; i++) {
char ch = arg[j][i];
printf("j is %d and i is %d\n", j, i);
if(isalpha(ch) || isblank(ch)) {
printf("'%c' == %d \n", ch, ch);
}
}
printf("\n");
}
}
int main(int argc, char *argv[])
{
print_letters(argc, argv);
return 0;
}
我猜问题与argv部分有关,但是经过查找,我仍然不知道是什么导致了'd'没有出现。
如果有人能解释一下,我会非常感激。
谢谢!