编译yahoo2头中的分段错误错误

时间:2013-07-02 17:47:51

标签: segmentation-fault

#include <libyahoo2/yahoo2.h>
#include <libyahoo2/yahoo2_callbacks.h>
#include <yahoo2.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>

int main() {
    int id ;
    char username[255] = "slam";
    char password[255] = "ss" ;
    id = yahoo_init(username, password);
    enum yahoo_status mYahoo ;
    mYahoo = YAHOO_STATUS_AVAILABLE ;
    yahoo_login(id , mYahoo );

    return 0;
}

大家好,当我编译这段代码时,输​​出就是Segmentation fault 任何身体都可以帮助我解决它PLZ

2 个答案:

答案 0 :(得分:0)

  

错误是此分段错误(核心转储)

你需要学习如何诊断这样的问题。

由于您使用的是某种类型的UNIX系统(您将很好地指定将来使用的系统),因此用于此类诊断的工具称为调试器。

在Linux和许多其他操作系统上,调试器称为gdb

所以你跑

gdb /path/to/your/executable
(gdb) run
# GDB will stop at crash point
(gdb) where   # <<== this command will tell you where your crash is happening

一旦你知道程序崩溃的地方,你就可以提出更好的问题。

答案 1 :(得分:0)

tnx帮助

编程接收信号SIGSEGV,分段故障。 在libyahoo2.c的yahoo_login(id = 1,initial = 0)中的0xb7fac9b1:1735 1735 libyahoo2.c:没有这样的文件或目录。     在libyahoo2.c中

(gdb)其中

在libyahoo2.c的yahoo_login(id = 1,initial = 0)中

0 0xb7fac9b1:1735

1 0x080486a0 in main()at b.c:20

(gdb)