连加时候出现的问题?

zalyer 2003-01-16 11:22:39
一道课后题目:
main()
{ int x,y,z;
x=y=1;
z=x++-1;
printf(“%d,%d\n”,x,z);
z+=-x+++++y; /*加号中间没有空格*/
printf(“%d,%d\n”,x,z);
}

但是在我注释的地方编译过不去。
于是改成 z+=-x++ + ++y; 结果是:3,0
但如果写成z+=-x+ + +++y; 结果就是:2,0
我是在tc2中编译的。请问为什么?

...全文
31 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
WaterSpinach 2003-01-16
  • 打赏
  • 举报
回复
编译器编译这种连着的符号时有一个原则:在正确的前提下尽可能的长
所以
在 z=x++ - 1时 // x = 2 , z = 1
后面为z+=-x++ + ++y 时// 则 x=3, z = z + (-3) + 2 , 所以 z 为 0
后面为z+=-x+ + +++y 时// 则 x =2, +++y 按上述规则解释为++(+y),即
最后一个+号相当于正负号,所以 z = -2 + 2 , 所以 z 也为 0
渭河流域位于中国黄河中游地区,是黄河的重要一级支流流域,地理范围主要涵盖陕西省中部、甘肃东部和宁夏部分地区。该流域自西向东延伸,总长约818公里,流域面积广阔,人口密集,是我国重要的农业与工业带,同时也是西北地区经济、文化与生态发展的核心区域之一。渭河流域水系发育完善,除干流外,还包括泾河、洛河、沣河、滈河等多条支流,构成了完整的河网体系,对黄河流域的水资源调配与生态安全具有重要意义。 本数据集提供了渭河流域矢量边界及河流分布的标准化shp文件,包含以下文件: (1)可编辑MXD文件:可直接在 ArcGIS 中打开,用户可进行二次编辑、专题制图及空间分析,方便科研、教学与管理应用。 (2)标准SHP文件:包含渭河流域边界矢量数据以及干流与主要支流的矢量化河流线条,属性表中附带河流名称、流域隶属等信息,便于查询与叠加分析。 (3)标准成图TIF文件:输出高清、规范的地图成果,能够直观展示渭河流域整体边界与内部河流分布格局,可用于汇报、展示与出版。 本资源可广泛应用于流域水资源管理、生态环境保护、土地利用研究、洪涝灾害评估等领域,同时也能为流域综合治理、生态修复规划、水文模拟与地理建模提供基础支撑。通过与其他数据(如DEM、土地覆盖、气象数据)叠加使用,还能开展更加深入的多源数据分析,为黄河流域高质量发展与区域生态安全提供科学依据。

70,023

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧