当前位置: 首页 > news >正文

上海做兼职的网站冉冉科技网站建设

上海做兼职的网站,冉冉科技网站建设,杭州新闻最新消息新闻,网站备案 公司名称关联性一、问题 最近写函数时&#xff0c;遇到了一个比较奇怪的问题&#xff0c;相信也好多人遇到一下的问题&#xff1a; error: expected declaration specifiers or ‘...’ before ‘(’ token代码如下&#xff1a; #include<stdio.h> struct stu{char *name;int score;…

一、问题

最近写函数时,遇到了一个比较奇怪的问题,相信也好多人遇到一下的问题:

error: expected declaration specifiers or ‘...’ before ‘(’ token

代码如下:

#include<stdio.h>
struct stu{char *name;int score;
} stus[]={{"zhangsan1",65},{"zhangsan2",98}
};
void averge(struct stu *,int);
int main(){int len=sizeof(stus)/sizeof(struct stu);printf("start...\n");//数组名可以认为是一个指针averge(stus,len);}
void averge(struct stu* stus,int len){char *name;int score;int sum=0;for(int i=0;i<len;i++){name=stus[i].name;//第一种形式score=(*(stus+i)).score;//第二种形式sum+=score;printf("%s...%d \n",name,score);}   printf("平均分:%d...\n",sum/len);
}

当然以上的代码运行和编译是正常的,那么可以对代码进行修改

#include<stdio.h>
struct stu{char *name;int score;
} stus[]={{"zhangsan1",65},{"zhangsan2",98}
};
void averge(struct stu *,int);
int main(){int len=sizeof(stus)/sizeof(struct stu);printf("start...\n");//数组名可以认为是一个指针averge(stus,len);}
void averge(struct stu*) stus,int len){    # 修改部分:对函数的参数加上括号-累死强制转换char *name;int score;int sum=0;for(int i=0;i<len;i++){name=stus[i].name;//第一种形式score=(*(stus+i)).score;//第二种形式sum+=score;printf("%s...%d \n",name,score);}   printf("平均分:%d...\n",sum/len);
}

编译结果如下:

└──╼ $gcc test.c -o test
test.c:25:13: error: expected declaration specifiers or ‘...’ before ‘(’ tokenvoid averge((struct stu )*stus,int len){

二、原因:

我们先来看一下c语言函数的定义:

函数名后面圆括号括起来的部分称为形式参数列表(即形参列表),方括号括起来的部分是可选的。如果有多个形式参数,应该分别给出各形式参数的类型,并用逗号隔开,该类函数称为有参函数。

return_type function_name( parameter list )
{
body of the function
}

这也就是说其中函数中是不能存在其他符号,这就解释了为什么会出现以上的错误,

其实我们所经常见到的是在调用函数时,在传入的参数进行强制类型转换,这与上述的方式是不相同的。
例如

struct dhb
{int aa;int bb;
};
struct  gxy
{int dd;
};
struct dhb gx = { 99,88 };
void test(struct gxy* p)
{printf("p->aa=%d\n", ((struct dhb*)p)->aa);printf("p->bb=%d\n", ((struct dhb*)p)->bb);p->dd = 23;   
}
int main()
{struct dhb* p1=&gx;test((struct gxy*)p1);printf("p1->dd=%d\n", ((struct gxy*)p1)->dd);
}
http://www.yayakq.cn/news/86611/

相关文章:

  • 为什么做游戏网站被封百度搜索关键词设置
  • 网站前端提成多少长春移动网站建设
  • 网站链接推广大连建设网水电
  • 做淘宝客优惠券网站必须是企业吗做网站和做app哪个简单
  • 网站域名space渭南做网站电话
  • iis怎么搭建asp网站宁夏建设监理协会网站
  • 宁波网络推广有哪些网站seo的主要优化内容
  • 可以做头像的网站云南电信网站备案
  • 如何提高网站的搜索排名wordpress 登录下载
  • 鸟人高端网站建设it运维工资
  • 张家明做网站无经验学电商要多久
  • 最新的购物网站 开深圳龙岗做网站
  • 福建省城乡建设网站建设部建筑招投标网站
  • 网站站长工具黄岐建网站
  • 宁德北京网站建设网站运营维护措施有哪些
  • 登录网站软件怎么做企业管理咨询是做什么的
  • 程序员做情侣网站 礼物短视频推广策划方案模板
  • 做h网站网站地址栏图标文字
  • 旅游网站开发团队logo生成器app
  • 网站建设的具体流程石景山网站建设的大公司
  • 外贸网站建设预算php做网站要用到的技术
  • 网站模版怎么样网站开发人员岗位职责
  • 顺义企业建站适合农村的代加工厂
  • 网站建设售前怎么做好简单 手机 网站 源码下载
  • 公司被其它人拿来做网站石家庄网站建设价格
  • 有了域名怎样做淘客网站wordpress多账号权限
  • 帝国建站教程做家具商城网站
  • html5网站实例酒店和网站对接如何做
  • 网站建设网络营销文章国外免费空间建网站
  • 建设一个手机网站需要多少钱网络培训机构排名前十