使用vs2013编写c语言程序 为啥 会出现max函数没有被定义error
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用vs2013编写c语言程序 为啥 会出现max函数没有被定义error相关的知识,希望对你有一定的参考价值。
使用vs2013编写c语言程序
为什么 会出现max函数没有被定义error
第一种:把int max(int x,int y)整个函数放在main函数上面
第二种:在main函数上面加一句 int max(int x, int y); 的函数声明 参考技术B 错误说明中说scanf这个函数可能不安全,建议你用scanf_s代替追问
你说的正解
本回答被提问者采纳为啥 INT_FAST16_MAX 被定义为 INT32_MAX (VS 2015)?
【中文标题】为啥 INT_FAST16_MAX 被定义为 INT32_MAX (VS 2015)?【英文标题】:Why INT_FAST16_MAX is defined as INT32_MAX (VS 2015)?为什么 INT_FAST16_MAX 被定义为 INT32_MAX (VS 2015)? 【发布时间】:2017-10-26 22:04:45 【问题描述】:我从 visual studio 2015 打开 "stdint.h" 文件,如下图所示,我注意到 INT_FAST16_MAX
定义为 INT32_MAX
。和未签名的一样。为什么会这样?
但最少的定义如预期。 (下)
#define INT_LEAST16_MAX INT16_MAX
#define UINT_LEAST16_MAX UINT16_MAX
【问题讨论】:
因为 int_fast16_t 和 int32_t 一样? 因为尺寸是实施-#define'd。 为什么不呢?在这个平台上int32_fast_t
恰好与int32_t
相同。没有错。
【参考方案1】:
INT_FAST16_MAX
是可以存储在int_fast16_t
变量中的最大值。
int_fast16_t
保证是最快的 int,大小为至少 16 位。
因为 MSVC 的目标机器具有 32 位通用寄存器,其访问速度比 16 位快,所以int_fast16_t
实际上是一个 32 位整数。因此,INT_FAST16_MAX
是 INT32_MAX
。
另见:
What's the difference between "int" and "int_fast16_t"?【讨论】:
以上是关于使用vs2013编写c语言程序 为啥 会出现max函数没有被定义error的主要内容,如果未能解决你的问题,请参考以下文章
为啥用VS2010编写C语言时会出现此项目已过期(会出现1- debug Win32)?