Ошибка: ожидаемые спецификаторы объявления или '...' до XXX (все виды параметров) - PullRequest
0 голосов
/ 11 октября 2018

Просто начинаем изучать Linux.Ubuntu 18.04, linux-kernel 4.15.Пробуйте этот простой код:

error

Я предположил, что что-то не так с stdio.h, но не смог понять это.В ожидании помощи.

#include<stdio.h>

char s[20];
"""
unsigned long ul = 1234567890;
sprintf(s,"%u",ul);
s="asb";
printf("%s\n",s);

Ответы [ 2 ]

0 голосов
/ 11 октября 2018

В этом коде:

  • main отсутствует, что является точкой входа по умолчанию.
  • Для чего используется """ - это вызывает ошибку.
  • Вы используете %u для типа unsigned, где ul имеет тип unsigned long, вместо этого используйте %lu.
  • Вы присваиваете строку s = "asb", котораяне правильный путь - используйте strcpy или strcat в зависимости от того, чего вы пытаетесь достичь.

Вот функциональная версия:

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

int main()
{
    char s[20];
    unsigned long ul = 1234567890;
    sprintf(s,"%lu",ul);
    strcat(s,"asb");        //CAN USE STRCPY AS WELL
    printf("%s\n",s);
    return 0;
}

OUTPUT: 1234567890asb

0 голосов
/ 11 октября 2018

Пара ошибок.Сначала Прочтите о том, как писать комментарии в коде C.Также ваша строка инициализации неверна.Вот правильное решение.

#include <stdio.h>
const char s[] = "asb";
printf("%s\n",s);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...