#include <stdio.h>
#include <string.h>
int convert(char *str)
{
int i, number = 0;
for (i = 0; str[i] != '\0'; ++i) {
number = number * 10 + str[i] - '0';
}
return number;
}
int main(int argc, char *argv[])
{
int j;
int c = convert(argv[2]);
if (argc == 3) {
for (j = 0; j < c; j++) {
printf("Hello, %s!\n", argv[1]);
}
} else if (argc < 3) {
printf("Not Enough Arguments\n");
} else if (argc > 3) {
printf("Too Many Arguments\n");
}
return 0;
}
Получение ошибки сегментации при задании менее трех аргументов. при предоставлении менее 3 аргументов он должен печатать «недостаточно аргументов», но он дает ошибку сегментации ошибок.c аргументы командной строки
вход: ./a raju
ожидается выход: not enough arguments
Использование 'argv [2]' перед проверкой - плохая идея, я думаю ... Действительно, вы не можете проверить свой собственный код (не говоря о сумасшедшем форматировании)? –