ошибка: ожидается '}' в конце ввода - PullRequest
1 голос
/ 16 июня 2011

У меня есть следующий код:

#include <libubuntuone-1.0/u1-music-store.h>
#include <libsyncdaemon-1.0/libsyncdaemon/syncdaemon-authentication.h>
#include <libsyncdaemon-1.0/libsyncdaemon/syncdaemon-credentials.h>
#include <libsyncdaemon-1.0/libsyncdaemon/syncdaemon-daemon.h>

static void
get_credentials (U1MusicStore *music_store,
                                 gchar **oauth_consumer_token,
                                 gchar **oauth_consumer_secret,
                                 gchar **oauth_token,
                                 gchar **oauth_token_secret)
{
    SyncdaemonCredentials *credentials;
    *oauth_consumer_token = *oauth_consumer_secret = *oauth_token = *oauth_token_secret = NULL;

    *oauth_consumer_token = g_strdup (syncdaemon_credentials_get_consumer_key (credentials));
    *oauth_consumer_secret = g_strdup (syncdaemon_credentials_get_consumer_secret (credentials));
    *oauth_token = g_strdup (syncdaemon_credentials_get_token (credentials));
    *oauth_consumer_secret = g_strdup (syncdaemon_credentials_get_token_secret (credentials));
}

int main() 
{
    return 0;
}

, и единственное, что мешает его компиляции, - это сообщение об ошибке, указанное в заголовке этого вопроса.Проблемная строка была идентифицирована как закрывающая скобка функции main, но это, очевидно, не так, и я не вижу, где еще я мог бы пропустить какие-либо скобки.Кто-нибудь еще может заметить, что я делаю здесь не так?

Ответы [ 2 ]

5 голосов
/ 16 июня 2011

Возможно, некоторые из включенных заголовков имеют несовпадающие скобки.

Возможно, компилятор плохо работает с файлами с непустой последней строкой, и в некоторых файлах есть такая строка.

Попробуйте закомментировать как можно больше (особенно все включенные), чтобы он скомпилировался, а затем вставлять код обратно, пока вы не локализуете проблему.

5 голосов
/ 16 июня 2011

В случае таких ошибок рекомендуется локализовать ошибку. Вы можете сделать это просто, комментируя блоки кода.

В этом примере вы можете прокомментировать функцию body get_credentials и проверить, что произойдет.

Также неплохо вставить пустую строку в конец файла исходного кода.

...