标题:大神们能不能帮我看看这个程序有什么问题
只看楼主
计算机好难啊
Rank: 1
等 级:新手上路
帖 子:33
专家分:8
注 册:2020-3-28
结帖率:25%
 问题点数:0 回复次数:11 
大神们能不能帮我看看这个程序有什么问题
#include "stdio.h"
void main()
{ int i=1,n;
  n=f(i,++i);
  printf("\nn=%d\n",n);
}
f(int a,int b)
{ int c;
   if(a>=b)
      c=1;
   else
      c=0;
   return(c);
}
我照着书上打的,我也不知道为什么,用vc++6.0,下面显示这些东西
--------------------Configuration: 1352 - Win32 Debug--------------------
Compiling...
1352.cpp
D:\CloudMusic\1352\1352.cpp(4) : error C2065: 'f' : undeclared identifier
D:\CloudMusic\1352\1352.cpp(8) : error C2373: 'f' : redefinition; different type modifiers
D:\CloudMusic\1352\1352.cpp(14) : fatal error C1004: unexpected end of file found
执行 cl.exe 时出错.

1352.exe - 1 error(s), 0 warning(s)
搜索更多相关主题的帖子: fatal int exe cpp unexpected 
2020-04-03 11:00
lin5161678
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:45
帖 子:1136
专家分:3729
注 册:2011-12-3
得分:0 
书错 别看这书
换书吧

不止代码错 代码就算改到能编译
代码的逻辑也是错的
毫无价值

https://zh.
2020-04-03 11:11
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
摘自 https://zh.
2) 若一个标量对象上的副效应与另一个使用同一标量对象之值的值计算相对无顺序,则行为未定义。

  f(i, i++); // 未定义行为

收到的鲜花
2020-04-03 12:23
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
得分:0 
我感觉i和++i,里面的i是同一个
程序代码:
#include "stdio.h"//不要这么写用<>#include <stdio.h>
int f(int a,int b);
void main()
{ int i=1;int n;
  n=f(i,++i);
  printf("\nn=%d\n",n);
}
int f(int a,int b)
{ int c;
   if(a==b)
      c=1;
   else
      c=0;
   return(c);
}



把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-04-03 12:31
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
得分:0 
玩了会4楼的代码
发现这串代码非常适合理解++,——,a更像是最终结果,b呈现的结果是后置加加以及后置减减的副作用,不过确实是未定义,楼主抛去这个未定义行为,
你应该注意到,函数也是需要声明定义的,就和int a;一样函数也应该int a();进行定义
那么怎样使用函数呢?
答案是和变量定义初始化一样
你可以这样
int i=1;

同样函数使用也是这样的
int i(){  bala,bala,return 0;}

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-04-03 14:04
tcxk
Rank: 2
等 级:禁止访问
帖 子:50
专家分:20
注 册:2020-3-26
得分:0 
为什么要return(c)呢,return c就完事啦

Better coding, better life💎
2020-04-03 14:13
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
得分:0 
在语言学中return(c);属于强调行为
就比如说 啊!大海啊!你如此的美丽!
当然也可以说    大海!你如此美丽!
啊!只是多余,可要可不要的语气词。
        

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-04-03 14:35
return_0
Rank: 8Rank: 8
来 自:五维空间
等 级:禁止访问
威 望:3
帖 子:512
专家分:838
注 册:2020-1-28
得分:0 
返回 c

返回啊! c!

2020-04-03 18:19
forever74
Rank: 12Rank: 12Rank: 12
来 自:CC
等 级:贵宾
威 望:49
帖 子:1636
专家分:3940
注 册:2007-12-27
得分:0 
嗯,于是
C++就是
C的加萌版本

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2020-04-03 18:32
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
得分:0 
c++不是萌萌的,是追求优雅高贵的公子哥,只是在我这有点跑调,不过可以凑活着听听
c是追求自由豪迈的帅气贵公子,楼主这题我的发言可以当做笑话听听,除非需要区分优先级,return后面可以不加括号的

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-04-03 19:21



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-500829-1-1.html




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

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