当前位置:  技术问答>linux和unix

我这有一段linux 下ftp 的客户端代码,但是运行时说有段错误, 实在搞不清,拜托帮一下忙。

    来源: 互联网  发布时间:2016-03-28

    本文导语:  运行后总是 Segmentation fault  #include  #include  #include  #include  #include  #include  #include  #include  #include  #define TRUE 1 #define dataLen 1024 char user_cmd[10],cmd_arg[20]; char buf[dataLen]; void cmd_pwd(int sock,int sockmsg); void cmd_dir...

运行后总是 Segmentation fault 

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

#define TRUE 1
#define dataLen 1024
char user_cmd[10],cmd_arg[20];
char buf[dataLen];

void cmd_pwd(int sock,int sockmsg);
void cmd_dir(int sock,int sockmsg);
void cmd_cd(int sock,int sockmsg,char *dirName);
void cmd_cdback(int sock,int sockmsg);
void cmd_help(int sock,int sockmsg);
void cmd_get(int sock,int sockmsg,char *fileName);
void cmd_put(int sock,int sockmsg,char *fileName);
void cmd_quit(int sock,int sockmsg);

int main(int argc,char *argv[])
{
  int cmd_len,arg_len;
  int sock, sockmsg;
  struct sockaddr_in server, servermsg;
  struct hostent *hp;
  
  sock=socket(AF_INET,SOCK_STREAM,0);
  sockmsg=socket(AF_INET,SOCK_STREAM,0);
  
  if (sockh_length);
  
  servermsg.sin_family=AF_INET;
  servermsg.sin_port=htons(atoi(argv[2])+1);
  memcpy((char*)&servermsg.sin_addr, (char*)hp->h_addr, hp->h_length);

  if (connect(sock,(struct sockaddr *)&server,sizeof server)dataLen)
{
read(fd,buf,dataLen);
write(sock,buf,dataLen);
fileSize=fileSize-dataLen;
}

read(fd,buf,fileSize);
write(sock,buf,fileSize);
close(fd);
printf("upload completedn");
}
else
{
printf("open file %s failedn",filePath);
}
}


















|
你是怎么运行的?





回复内容太短了!

|
debug一下,,
找到是什么地方出的错,,
我遇到过这样的问题。。

|
首先你要找到断错误的地方,大部分都是没有分配内存空间,引用地址错误引起的!

|
struct hostent *hp

hp没有非配内存空间

|
把ulimit -c unlimited打开。出现Segmentation fault的时候会生成core文件的,然后用gdb打开看一下,具体是哪里报错。

    
 
 

您可能感兴趣的文章:

  • 拜托了,帮帮我吧,Linux图形化界面不见了。
  • 急求Linux的具体安装步骤 拜托各位大侠了
  • 我打算学习嵌入式Linux开发,想请各位指路?拜托了!一定给分!!
  • 因为马上要做转正报告公司提出了如下要求 拜托各位帮我一起想个题目(Linux方面的):
  • 有几个问题,我是linux新手,刚开始学习,老师的问题太难了,拜托高手提示一下谢谢。
  • 拜托,谁能给我发一个Linux系统下的/usr/include/secutiry/pam_misc.h文件?
  • Linux的复习题 求求各个兄弟帮忙做一下 只有选择和填空题 拜托了
  • Linux c socket编程:简单的客户端(client)和服务端(server)实现
  • 对于用客户端上网的用户(客户端不支持linux)如何在linux下上网?
  • 在Linux下开发手机客户端或Pc客户端交互的服务器,需要学哪些知识?
  • linux端是服务器,客户端连接后,有时并不知道客户端断开,怎么侦测?
  • linux 能ping通客户端ip,但ping不通客户端的域名。
  • Linux网络编程(怎样实现两个客户端之间的通信)
  • Linux的BBS客户端 QTerm
  • Linux的博客客户端 Drivel
  • Linux 代理 一个客户端来就创建一个连接
  • linux客户端如何配置网络?
  • linux下用kerberos客户端加入windows域的问题
  • 求助:Linux下ftp客户端代码编写
  • linux怎样装那个锐杰认证客户端
  • Linux系统做服务器,客户端可使用windows系列的系统吗
  • Linux的Twitter客户端 Twitux
  • Linux下默认的邮件客户端是什么
  • Linux邮件客户端 Evolution
  • LINUX数据库oracle客户端安装问题
  • Linux 用occi 要安装 oracle客户端吗?
  • 求FTP客户端源程序或相关资料(C,LINUX )
  • 关于linux socket 客户端编程
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • linux/centos安装nginx常见错误及解决办法
  • .net/c#/asp.net iis7站长之家
  • Linux下怎样查c程序的错误号?程序出现错误:System error 32: Broken Pipe, 是什么原因?
  • 紧急求救:在LINUX下如何根据错误代码,查出对应的错误描述?
  • 在Linux系统上recv返回错误,通过errno得到的错误消息为"Interrupted system call"
  • FTP匿名登陆 LINUX 出现错误 linux FTP 550 permission
  • linux 编程获取错误信息有没相关资料?
  • windows下好使的函数到linux下怎么就段错误了呢?
  • linux中非正常关机,出现的错误如何解决?
  • 请问,我用turbo Linux,远程FTP报Password required, but none set错误
  • linux安装错误,怎么解决
  • Linux 下用什么函数查找socket上一次的错误?
  • Linux硬件错误检查工具 mcelog
  • Linux启动错误求助!
  • VM下的linux Socket程序怎么客户机一连接就出现Bad address的错误?
  • 我向linux内核里加载模块时出现段错误
  • Linux虚拟机启动出现错误
  • 为什么每次登录 linux 都出现这句错误信息呢?
  • linux源码包编译有错误
  • Linux下调用.so引发的段错误问题
  • linux下配置PHP 编译的时候出现错误
  • linux c/c++ IP字符串转换成可比较大小的数字
  • 在win分区上安装linux和独立分区安装linux有什么区别?可以同时安装吗?(两个linux系统)
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • 在虚拟机上安装的linux上,能像真的linux系统一样开发linux程序么?
  • secureCRT下Linux终端汉字乱码解决方法
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在有linux的盘)
  • Linux c字符串中不可打印字符转换成16进制
  • 安装vmware软件,不用再安装linux系统,就可以模拟linux系统了,然后可以在其上学习一下LINUX下的基本操作 了?
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 红旗Linux主机可以通过127.0.0.1访问,但如何是连网的Win2000机器通过Linux的IP去访问Linux


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3