| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 986 人关注过本帖
标题:c语言问题,萌新求解惑
只看楼主 加入收藏
c语言小学童
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-11-20
结帖率:0
收藏
已结贴  问题点数:20 回复次数:5 
c语言问题,萌新求解惑
我想要把ip地址打印出来,为什么这个代码打印出来的值是-66672448,而定义了下面那个函数后,就可以完整的将ip地址打印出来了?求好心人解惑
int main()
{
    unsigned char *p1 = &ip;
    *p1 = 192;
    p1++;
    *p1 = 168;
    p1++;
    *p1 = 6;
    p1++;
    *p1 = 252;
    printf("%d")
    return 0;
}


void ip2s(int n) //定义了一个函数ip2s
{
    unsigned char *p = &n;
    printf("ip = %u.%u.%u.%u", *p, *(p + 1), *(p + 2), *(p + 3));
}

上面的代码是将unsigned char数值放到int里,结果失败了,显示-66672448,下面的代码不也是将unsigned char赋值给int吗?为什么加了下面的代码,就可以打印出ip 192.168.6.252
搜索更多相关主题的帖子: ip地址 return c语言 
2016-11-20 12:19
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:10 
看着你的提问就头晕。关键是提供的代码不完整或者是错的。
2016-11-20 14:09
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:10 
错误太多了

DO IT YOURSELF !
2016-11-20 17:21
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
简单点  这个咋样
程序代码:
#include<stdio.h>


int main()
{
   int s[4];
   scanf("%d.%d.%d.%d",&s[0],&s[1],&s[2],&s[3]);
   printf("您所输入的IP地址是 %d.%d.%d.%d",s[0],s[1],s[2],s[3]);
   return 0;
}


DO IT YOURSELF !
2016-11-20 17:27
c语言小学童
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-11-20
收藏
得分:0 
以下是引用wp231957在2016-11-20 17:27:23的发言:

简单点  这个咋样#include<stdio.h>


int main()
{
   int s[4];
   scanf("%d.%d.%d.%d",&s[0],&s[1],&s[2],&s[3]);
   printf("您所输入的IP地址是 %d.%d.%d.%d",s[0],s[1],s[2],s[3]);
   return 0;
}



谢谢亲



2016-11-22 00:22
c语言小学童
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2016-11-20
收藏
得分:0 
回复 2楼 linlulu001
不好意思,我也发现这么问问题太折磨人...
2016-11-22 00:23
快速回复:c语言问题,萌新求解惑
数据加载中...
 
   



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

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