| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 568 人关注过本帖
标题:返回结构体的函数 越改错误越多
只看楼主 加入收藏
石头star
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2015-1-28
结帖率:100%
收藏
 问题点数:0 回复次数:9 
返回结构体的函数 越改错误越多
#include <stdio.h>
int main(int argc, char *argv[])
{
 struct xyz{
  int mx;
  long my;
  double mz;
 };
 struct xyz set_xyz(int x,long y,double z)
 {
  struct xyz temp;
  temp.mx=x;
  temp.my=y;
  temp.mz=z;
  return(temp);
 }
  
int main(void)
 {
  struct xyz xyz={0,0,0};
  xyz=set_xyz(10,320,35.6);
  printf("xyz.mx=%d\n",  xyz.mx);
  printf("xyz.my=%ld\n",  xyz.my);
  printf("xyz.mz=%f\n",  xyz.mz);
  return 0;
 




从2个错误到现在改到27个错误,按照书上的程序输入的代码,返回结构体的函数,还有一点不明白第二个struct是一个结构体还是一个函数?
搜索更多相关主题的帖子: include double return 结构体 
2015-04-07 16:12
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
什么书上的代码是这样的?

授人以渔,不授人以鱼。
2015-04-07 16:18
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:0 
符号在输入时全角半角不分, 错误自然就很多
不熟的情况下 可以在写代码时关闭中文输入法

Only the Code Tells the Truth             K.I.S.S
2015-04-07 16:24
happy两棵树
Rank: 2
等 级:论坛游民
帖 子:28
专家分:62
注 册:2013-7-18
收藏
得分:0 
程序代码:
#include <stdio.h>
    struct xyz
    {
          int mx;
          long my;
          double mz;
    };
    struct xyz set_xyz(int x,long y,double z);
    
int main(void)
{
  struct xyz xyz1={0,0,0};
  xyz1=set_xyz(10,320,35.6);
  printf("xyz.mx=%d\n", xyz1.mx);
  printf("xyz.my=%ld\n", xyz1.my);
  printf("xyz.mz=%f\n", xyz1.mz);
  return 0;
}


    struct xyz set_xyz(int x,long y,double z)
{
  struct xyz temp;
  temp.mx=x;
  temp.my=y;
  temp.mz=z;
  return(temp);
} 
2015-04-07 16:26
happy两棵树
Rank: 2
等 级:论坛游民
帖 子:28
专家分:62
注 册:2013-7-18
收藏
得分:0 
太多的中文字符,而且两个main函数,也是醉了
2015-04-07 16:27
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:0 
程序代码:
#include <stdio.h>

struct xyz {
    int mx;
    long my;
    double mz;
}; //以上定义了一个结构体

void set_xyz(struct xyz * xyz, int x, long y, double z) {
    xyz->mx = x; //这里xyz是指针变量 访问结构元素时用 -> 符号
    xyz->my = y;
    xyz->mz = z;
} //以上定义了一个函数 参数 xyz 为指向 xyz类型 结构体变量的指针变量 
  //函数的效果是给结构体赋值 由于传递的是指针 无需返回值

int main(void) {
    struct xyz xyz = {0, 0, 0}; //定义并初始化了一个 xyz类型 的结构体变量 xyz
    set_xyz(&xyz, 10, 320, 35.6); //调用函数对结构体变量xyz初始化
    printf("xyz.mx = %d\n", xyz.mx); //这里xyz是结构体变量 访问结构元素时用 . 符号
    printf("xyz.my = %ld\n", xyz.my);
    printf("xyz.mz = %.1f\n", xyz.mz); //以上三行打印结构体变量 xyz 数据
    return 0;
}

Only the Code Tells the Truth             K.I.S.S
2015-04-07 16:37
石头star
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2015-1-28
收藏
得分:0 
回复 2楼 TonyDeng
,,,我太笨了
2015-04-07 16:48
石头star
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2015-1-28
收藏
得分:0 
回复 3楼 longwu9t
是切换了好多次中英文输入法,后来都改不回去
2015-04-07 16:49
石头star
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2015-1-28
收藏
得分:0 
回复 5楼 happy两棵树
我还不知道不能两个main函数 ,,,
2015-04-07 16:51
石头star
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2015-1-28
收藏
得分:0 
回复 6楼 longwu9t
非常感谢  我仔细看看
2015-04-07 16:52
快速回复:返回结构体的函数 越改错误越多
数据加载中...
 
   



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

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