Ожидаемые спецификаторы объявления или маркер «…» перед «<»? - PullRequest
0 голосов
/ 02 мая 2018

Это мой код, который выдает следующую ошибку при компиляции: ожидаемые спецификаторы объявления или «…» перед «<» токеном строка № 5 </p>

// Код

    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>

    int main(int argc, <span id="IL_AD1" class="IL_AD">char</span> *argv[])// line 5
    {
        char *ptr;
        if(argc < 3)
        {
            printf("Usage: %s <<span id="IL_AD2" class="IL_AD">environment variable</span>> <target program name>\n", argv[0]);
            <span id="IL_AD3" class="IL_AD">exit</span>(0);
        }
        ptr = getenv(argv[1]); /* get env var location */
        ptr += (strlen(argv[0]) - strlen(argv[2]))*2; /* adjust for program name */
        printf("%s will be at %p\n", argv[1], ptr);
    }

1 Ответ

0 голосов

Проблема здесь в том, что вы смешиваете два совершенно разных языка. HTML и C не имеют никакого отношения друг к другу, видят, что они даже для разных платформ.

Удалите все теги HTML из своего кода, и вы увидите, что ошибка исчезла.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main(int argc, char *argv[])
{
    char *ptr;
    if(argc < 3)
    {
        printf("Usage: %s environment variable\n", argv[0]);
    }
    ptr = getenv(argv[1]); /* get env var location */
    ptr += (strlen(argv[0]) - strlen(argv[2]))*2; /* adjust for program name */
    printf("%s will be at %p\n", argv[1], ptr);
}

Я не знаю, по какой причине вы это делаете, но в любом случае это невозможно.

...