Здравствуйте, я только начал программировать на C, и я пытаюсь прочитать файл и дать имя файла в качестве аргумента без конечного .txt. Я хочу добавить .txt в свой код: ./myexample.exe fileдобавить строку в заданный аргумент командной строки в C
если я использую file.txt, нет проблем, но я не знаю, как изменить argv [1] i try char * n = argv [ 1] + ".txt"; оно не работает, и я не знаю, что-нибудь еще ..
int main(int argc, char* argv[]) {
char *n = argv[1] +".txt";
FILE *fp1;
fp1 = fopen(n , "r");
То, что я получу, если я использую char *n = argv[1]+".txt"
error: invalid operands to binary + (have 'char *' and 'char *')
Возможный дубликат [Как объединить строки const/literal в C?] (Http://stackoverflow.com/questions/308695/how-to-concatenate-const-literal-strings-in-c) – UnholySheep
1) Указатель не является строкой! 2) Указатель не является массивом. 3) C не имеет отдельного строкового типа. – Olaf