网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
04月05日漏签0天
c语言吧 关注:801,942贴子:4,377,284
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 14回复贴,共1页
<<返回c语言吧
>0< 加载中...

求助帖...........................那位大神来解释一下原因

  • 只看楼主
  • 收藏

  • 回复
  • 金童身边少玉女
  • 大能力者
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include<stdio.h> int a=3; int b=5; int max(int a,int b); int main() { int a=8; printf("%d\n",max(a,b)); printf("%d %d\n",a,b); return 0; } int max(int a,int b)
{ int c; c=a>b?a:b; return(c); }
这个运行结果是8
#include<stdio.h> int a=3; int b=5; int max(int,int); int main() { int a=8; printf("%d\n",max(a,b)); printf("%d %d\n",a,b); return 0; } int max(int,int)
{ int c; c=a>b?a:b; return(c); }
这个运行结果是5
不知道怎么回事 另外求大神解释一下全局变量怎么才能覆盖局部变量.


  • 金童身边少玉女
  • 大能力者
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
沉了?


2026-04-05 20:33:40
广告
不感兴趣
开通SVIP免广告
  • 边缘卍颓废
  • 麻婆豆腐
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
把a>b?a:b用括号括起来试试!


  • 快叫仲哥哥
  • 强能力者
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
额,应该是局部变量覆盖全局变量变量重名就会覆盖的,可以在主函数外进行定义全局产量不要与函数内变量重名就行


  • niNNdeXS
  • 强能力者
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
你第二个函数定义形参没用变量名,故代码块内的a b是全局变量无论您怎么调用该函数都会返回值5的~~~


  • niNNdeXS
  • 强能力者
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
你第二个函数定义形参没用变量名,故代码块内的a b是全局变量无论您怎么调用该函数都会返回值5的~~~


  • 提笔不为风雅1
  • 超能力者
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include<stdio.h>
int a = 3;/*定义全局变量a*/
int b = 5;/*定义全局变量b*/
int max(int a, int b);
int main()
{
int a = 8;
/*在main函数中,a=3被a=8覆盖,其有效范围从此到main函数结束*/
printf("%d\n", max(a, b));
printf("%d %d\n", a, b);
return 0;
}
int max(int a,int b)
{
int c;
c = a > b ? a : b;/*max中的a,b是调用的main高数的,所以a8,b5*/
return (c);


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 14回复贴,共1页
<<返回c语言吧
分享到:
©2026 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示