首页 > 其他分享 >c语言中函数体中的变量声明不能使用和形参相同的变量名

c语言中函数体中的变量声明不能使用和形参相同的变量名

时间:2024-11-07 12:57:00浏览次数:1  
标签:形参 int max PC1 体中 printf test 变量名 root

 

001、

[root@PC1 test]# ls
test.c
[root@PC1 test]# cat test.c
#include <stdio.h>

int max(int a, int b)                                   // 创建一个名为max的函数
{
        int k = 100;
        if(a > b)
        {
                 return a;
        }
        else
        {
                return b;
        }
}

int main(void)
{
        int x, y;

        puts("please input two integers.");
        printf("x: "); scanf("%d", &x);
        printf("y: "); scanf("%d", &y);

        printf("the large is %d\n", max(x,y));

        return 0;
}
[root@PC1 test]# gcc test.c -o kkk
[root@PC1 test]# ls
kkk  test.c
[root@PC1 test]# ./kkk
please input two integers.
x: 87
y: 34
the large is 87

 。

 

002、

[root@PC1 test]# ls
test.c
[root@PC1 test]# cat test.c           ## 测试程序
#include <stdio.h>

int max(int a, int b)                 // 创建一个函数max
{
        int a = 100;                  //声明一个和形参同名的变量
        if(a > b)
        {
                 return a;
        }
        else
        {
                return b;
        }
}

int main(void)
{
        int x, y;

        puts("please input two integers.");
        printf("x: "); scanf("%d", &x);
        printf("y: "); scanf("%d", &y);

        printf("the large is %d\n", max(x,y));

        return 0;
}
[root@PC1 test]# gcc test.c -o kkk                            ## 程序无法正常编译
test.c: In function ‘max’:
test.c:5:6: error: ‘a’ redeclared as different kind of symbol
  int a = 100;
      ^
test.c:3:13: note: previous definition of ‘a’ was here
 int max(int a, int b)
             ^

 。

 

标签:形参,int,max,PC1,体中,printf,test,变量名,root
From: https://www.cnblogs.com/liujiaxin2018/p/18531927

相关文章

  • iconfont 批量把图标加入购物车的方法 并且在C#窗体中使用
    iconfont 是阿里旗下很好用的图标管理网站(https://www.iconfont.cn/),里面有百万个小图标,可以随意下载切换颜色,是很多前端人员的选择。但是网站没有将图标批量加入购物车的功能,很不方便,现记录下批量加入购物车的js代码:在浏览器中按f12打开【开发人员工具】,找到【console(控......
  • Windows 7 & Windows Server 2008 R2 简体中文版下载 (updated Oct 2024)
    Windows7&WindowsServer2008R2简体中文版下载(updatedOct2024)Windows7&WindowsServer2008R2(2024年10月更新)请访问原文链接:https://sysin.org/blog/windows-7/查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgWindows7&WindowsServer2008......
  • 【八叉树】从上千万个物体中【**瞬间**】就近选取坐标
    众里寻他千百度,蓦然回首,那人却在灯火阑珊处前情提要在某些情况下,我们在场景中创建了数百万个物体,这些物体没有直接的网格或碰撞体(例如,通过GPU绘制的物体),因此无法通过常规的射线检测与碰撞体进行交互。我们仅掌握这些物体的坐标或顶点位置。在这种情况下,我们该如何通过鼠标来......
  • 定义明确的参数名/变量名--许多时候,授人以渔还真不如直接授人以鱼
    定义明确的参数名/变量名,是软件开发中的一个重要准则。但是,总这么强调,起的作用似乎并不大。许多时候,授人以渔还真不如直接授人以鱼。所以,我们具象化,看一个栗子。下面是一个业务服务类UserTagService中的一个私有方法。这个方法控制业务逻辑并调用仓储类UserTagManager实现向use......
  • 如果python的类变量和实例变量名字一样会如何?
    python中类变量是属于类的,不属于具体的对象,所有对象共享一个类变量。类变量可以通过类名.变量名访问,也可以通过实例化后的对象.变量名访问。那么,如果我给对象的变量起的名字和类变量同名会如何?我们写代码测试一下:classFoo:name="hello"defset_instance_name(self,......
  • camtasia2024永久免费简体中文破解版网盘安装包下载
    camtasia2024——你的屏幕录制全能小助手大家好,我是你们的分享达人小白兔......
  • C++中int main(int argc, char* argv[])形参解释
    在 intmain(intargc,char*argv[]) 中,argc 和 argv 是主函数 main 的参数,用于处理命令行输入参数。它们允许程序从命令行接收额外的输入值,常用于控制程序的执行行为或传递信息。参数解释argc(argumentcount):表示从命令行传递给程序的参数个数,包括程序本身的名字。它......
  • 关于C/CPP使用结构体中位域的一些笔记
    工作中软件通讯用到了结构体,在解析时,对应第一个变量在高位还是低位一直记不住。故计此博客作为笔记typedefstruct_stBin{ BYTEbOne:2; BYTEbTwo:2; BYTEbThree:2; BYTEbFour:2; _stBin() { bOne=0; bTwo=0; bThree=0; bFour=0; }}stB......
  • 绘图工具Origin 2024简体中文版百度云
    如大家所了解的,Origin是一款功能强大的图形可视化和数据分析软件,也是科研人员和工程师常用的数据分析和制图工具。Origin为初学者提供了一个易于使用的界面,并且随着用户对应用程序的熟悉,结合了执行高级定制的能力。目前最新为Origin2024版本。Origin8.0-2024: https://pan......
  • 3dmax简体中文版百度云资源下载(附教程)
    如大家所熟悉的,3dmax是一款基于PC系统的三维动画渲染和制作软件。其广泛应用于广告、影视、工业设计、建筑设计、三维动画、多媒体制作、游戏、以及工程可视化等领域。3dsmax自用安装包、教程自用:https://pan.baidu.com/s/1D52GYEVeTN-ffCXsd4oK9Q?pwd=15133dmax学习方法......