c++ - 运行时参数更改的宏在 cpp 中给出错误的 ans
问题描述
嗨,我有一个这样的宏的 cpp 代码。但不知何故,当我在运行时更改参数时,它的行为很神秘。找不到这个的原因。在恒定值是可以的。
#include<iostream>
#define prod(a,b) a*b
using namespace std;
int main()
{
int x=3,y=4;
cout<<prod(x+2,y-1)<<endl;
}
我为此得到 10 个。但它不应该给我返回值 15 吗?感谢您的提前帮助。
解决方案
推荐阅读
- javascript - 返回包含十进制数的数组的总和 JavaScript
- ios - 将标签添加到点
- android - 设置适配器时仅在 ViewPager 中创建第一个片段
- laravel - 如何使用 Laravel domPDF 删除生成按钮
- javascript - 传递给 asp.net mvc JsonResult actionmethod 的 javascript 对象属性始终为空
- python - 查询DB表并转换为DataFrame ok,但是导出时数据被截断
- sqlplus - 如何覆盖数据库 Oracle 12c SQL plus 中的旧 ddl
- go - 如何通过结构字段名称获取 Gmail API 错误代码?
- scala - 使用枚举更新表
- tensorflow - Keras / TensorFlow 批次随机化?