В C main объявлен как:
int main(int argc, char** argv);
первый аргумент - это число параметров, а второй - массив параметров, поэтому, например, в вашем случае вы должны сделать:
#include<string.h>
#include<stdio.h>
#define QUESTION_MARK "-?"
int main(int argc, char **argv){
if(argc > 1){
char *qsmark = argv[1];
if(strcmp(qsmark, QUESTION_MARK) == 0){
printf("argv[1] is -?\n");
}
}
return 0;
}
Помните, что первый аргумент argv - это имя исполняемого файла.Пожалуйста, избегайте сравнения строк руками, используйте стандартную библиотеку, чтобы получить, если то, на что указывает qsmark, действительно равно "-?"