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

一个c程序的小问题,请大虾指教

    来源: 互联网  发布时间:2016-06-05

    本文导语:  这个程序从文件OID中读取一行,然后用strncat函数将temp数组的内容连接到读出来的那一行的后面 程序能运行但是结果是下面这样的: .1.3.6.1.2.1.1.1 .1.3.6.1.2.1.1.1D���'�.254 我原本期待的结果是:.1.3.6.1.2.1.1.1.254 不知...

这个程序从文件OID中读取一行,然后用strncat函数将temp数组的内容连接到读出来的那一行的后面
程序能运行但是结果是下面这样的:
.1.3.6.1.2.1.1.1
.1.3.6.1.2.1.1.1D���'�.254
我原本期待的结果是:.1.3.6.1.2.1.1.1.254

不知道中间的那堆乱码(D���'�)怎么消除,我自个估计是从文件中读取一行后结果有个n字符,我用s2的目的就是想在s中消除n字符,然后再连接temp数组
但是没用,请大虾指教了,十分感谢!

我用的是ubuntu8.10的系统

#include 
#include 
int
main(void)
{
char s[100] = "192.168.10";
char s2[100];
char temp[] = ".254";
FILE *fp;
int len;

fp = fopen("./OID","r+");
fgets(s,100,fp);

len = strlen(s);
if(s[len - 1] == 'n')
len --;
memcpy(s2,s,len);
strncat(s2,temp,strlen(temp));

printf("%sn",s);
printf("%sn",s2);
return 0;
}

|
貌似你复制 s 到 s2 时,没有复制结束字符,需要加上结束字符 '':
#include  
#include  
int 
main(void) 

char s[100] = "192.168.10"; 
char s2[100]; 
char temp[] = ".254"; 
FILE *fp; 
int len; 

fp = fopen("./OID","r+"); 
fgets(s,100,fp); 

len = strlen(s); 
if(s[len - 1] == 'n') 
  s[len - 1] = 0; 
memcpy(s2, s, len); 
strncat(s2, temp, strlen(temp)); 

printf("%sn",s); 
printf("%sn",s2); 
return 0; 
}

|
char s[100];
memset(s, 0, sizeof(s));
strcpy(s,"192.168.10"); 

或者如楼上所说:
char s[100] = "192.168.10"; 


    
 
 

您可能感兴趣的文章:

  • 急!请问大虾,如何书写UNXI下的MakeFile以编译C(调用了某些库)程序?
  • 经常听人调试程序时说程序“core了”,不知道所说的“core了”是什么意思?望大虾指点迷津......
  • 请问各位大虾,用bcb编写的程序如何能够在solaris的环境下运行?
  • 在AIX 5.3 上编译程序的问题,请教各位大虾
  • 各位大虾,帮小弟一下,刚学linux,怎么在linux下安装硬件的驱动程序
  • 为什么我的程序在运行的时候总报错?? 请大虾不吝赐教
  • 请教各位大虾!!linux下编译的程序如何移植到windows下
  • 请教大虾,我装了个linux,但是怎么不能编译c程序,不认识gcc!
  • 请问大虾们,这段shell程序有什么错?
  • 我的JAVASCRIPT小程序出错了,大虾看看错在哪儿!
  • 大虾,怎么用gdb调试多进程程序啊?
  • 请教各位大虾:在linux下,怎样用程序实现基于ftp传输文件?
  • 请教各位大虾,你们是在Windows下使用C/C++来开发Linux的程序吗
  • 数据库 iis7站长之家
  • 买了《程序员大本营2001·Java》的大虾看过来!!!
  • 请教各位大虾:Red Hat Linux 9.0中编译C++程序出现:/usr/bin/ld: cannot find -lm
  • JAVA中怎样实现字符串的大小写转换?(完整程序)各位大虾帮帮我?
  • 各位大虾,为什么我的java程序能通过编译,但是在用java命令运行程序的时候却老是报错“Exception in thread "main" java.lang.NoClassDe
  • 求助!!程序错误!请大虾近来看看!!
  • 我用java做的applet站内搜索程序,不能搜索中文,那位大虾能帮帮我?代码如下:
  • 我用的是putty软件SSH到linux上,但启动程序后关闭终端程序就退出了,在线等,请高人指教!
  • 一个为似企业QQ的软件(含服务器程序和客户端程序)的Java源码,可以卖多少钱?请指教
  • 高手指教:怎样在LINUX下运行WIN98程序?
  • 想使用Kliyx把Delphi写的代码编译为Linux程序, 装什么Linux什么版本最好?请明人指教,谢谢!?
  • 在运行一个应用程序时出的问题,请指教,急!!
  • 用Qt3.1.4编写的程序,如何加入动态库呀?诚恳指教!!
  • 关于jb7的问题。如何让程序中的swing组件在design中可见?请高手指教!
  • 用Qt3.1.4编写的程序,如何加入自己编写的另外一个动态库呀?诚恳指教!!
  • 高手指教——在没有卸载程序的情况下,如何卸载已安装的软件,象Windows那样?
  • 在命令行下怎样单步跟踪一个java程序的运行?请各位指教!
  • 小弟初入java这一行,很想看看已经编好的源程序,愿意指教的请发送到samgundam@sina.com!谢谢
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • c/c++服务器程序内存泄露问题分析及解决
  • unix程序中调用其他程序的问题
  • 走虚拟网卡内核程序和走物理网卡应用程序结合问题
  • wine中安装windows程序,程序崩溃的问题
  • 一个信息添加,修改,删除,查询的问题,程序出了一个问题实在不知道为什么,各位帮看一下程序如下
  • 请问linux下一个很简单的问题:我们的控制台下直接输入某个程序名就可以执行该程序,原理是什么?
  • Linux下面的开发好的Java程序,如何部署到其他机器?开发好的Java图形程序,终端上能否用?等问题
  • 程序发布的问题(动态连接库的问题)
  • linux初学者一简单问题!在线送分!linux设备驱动程序一书的第一个程序.
  • 紧急问题:我启动一个java程序之后用ps一看,为和显示我启动了多个程序?然后我kill-9第一个pid之后,又全部没了
  • ./configure时,提示 missing /usr/.../version.h文件?是系统问题?还是安装程序的问题?
  • jbuilder7问题 编译没有问题,内部运行编写的的java程序就退出了???
  • 请教高手一个简单问题:给定一个文件名,如何去查找该文件正在被几个程序使用,并怎么样才可以切断这个文件与正在打开该文件的程序之间的
  • 请教多线程程序的内存占用问题
  • 关于软件或者程序的源代码问题??
  • 几个Linux应用程序开发的问题请教LINUX程序员!
  • linux可执行程序运行速度问题
  • 多线程网络通讯程序的稳定性问题
  • 程序输出的问题
  • linux基础问题,configure,make生成应用程序问题
  • shell脚本变量与应用程序同步的问题
  • 重装服务器后IIS网站错误(应用程序中的服务器错误)
  • 为什么我在java程序里启动的一个程序在java程序关闭后,该程序的所有进程都关掉了
  • windows server2008上PowerBuilder程序系统错误解决方法
  • Linux 编程怎么样在程序开启一个程序,和关闭一个程序?
  • c语言判断某一年是否为闰年的各种实现程序代码
  • 请问从一个java程序中如何调用另一java程序,并控制可以其状态(最小化、最大化、结束程序),还有怎样知道那个被调用的程序结束。
  • 程序员的八种级别,你属于哪一级?
  • Linux下的程序是在内存中运行的吗?为什么在程序运行的时候可以删除程序文件?
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 我的程序是用c写的gtk+程序,有个函数的参数要传给它图片的文件名,但是图片和原程序不在同一目录下怎么办?怎么在程序里指定文件的路径


  • 站内导航:


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

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

    浙ICP备11055608号-3