| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 391 人关注过本帖
标题:怎么会这样 帮忙看看!
只看楼主 加入收藏
glarm
Rank: 2
等 级:论坛游民
帖 子:43
专家分:24
注 册:2015-3-4
结帖率:60%
收藏
已结贴  问题点数:20 回复次数:1 
怎么会这样 帮忙看看!

#include <unistd.h>
#include <string.h>
#include <stdlib.h>
#include <fcntl.h>
#include <sys/shm.h>
char *  al(char *);
int main (int argc,char * argv[])
{      
        printf("%s \n",al("www.baidu.com"));
        return 0;
}
char * al(char * www)
{
        char buffer[100];
        char *ip=(char *)malloc(sizeof(char) * 15);
        memset(buffer,0,sizeof(buffer));
        sprintf(buffer,"ping %s",www);
        FILE * fp=popen(buffer,"r");
        memset(buffer,0,sizeof(buffer));
        fgets(buffer,sizeof(buffer),fp);
        ip  = strtok(buffer,")");
        ip  = strtok(ip,"(");
        ip  = strtok(NULL,"(");
        printf(ip);         //不加这个printf  输出见【a】 加上这个语句就正常  见【b】
        return ip;
}
~

结果:
[@localhost ~]$ cd Templates/
[@localhost Templates]$ gcc 2.c -o 2.out
[@localhost Templates]$ ./2.out
[a]输出:
[@localhost Templates]$ gcc 2.c -o 2.out
[@localhost Templates]$ ./2.out
[b]输出:180.97.33.107180.97.33.107
[@localhost Templates]$

哪位帮忙看看










[ 本帖最后由 glarm 于 2015-9-17 10:08 编辑 ]
搜索更多相关主题的帖子: include return 
2015-09-17 10:04
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:20 
buffer是局部变量,ip指向这个局部变量内一元素
2015-09-17 19:22
快速回复:怎么会这样 帮忙看看!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016716 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved