历史上的今天
返回首页

历史上的今天

今天是:2025年04月16日(星期三)

正在发生

2019年04月16日 | STM32 Keil MDK数据类型定义

2019-04-16 来源:eefocus


/* Copyright (C) ARM Ltd., 1999 */

/* All rights reserved */

 

/*

 * RCS $Revision: 138251 $

 * Checkin $Date: 2008-10-07 12:02:11 +0100 (Tue, 07 Oct 2008) $

 * Revising $Author: agrant $

 */

 

#ifndef __stdint_h

#define __stdint_h

 

  #ifndef __STDINT_DECLS

  #define __STDINT_DECLS

 

    #undef __CLIBNS

 

    #ifdef __cplusplus

      namespace std {

          #define __CLIBNS std::

          extern "C" {

    #else

      #define __CLIBNS

    #endif  /* __cplusplus */

 

 

/*

 * 'signed' is redundant below, except for 'signed char' and if

 * the typedef is used to declare a bitfield.

 * '__int64' is used instead of 'long long' so that this header

 * can be used in --strict mode.

 */

 

    /* 7.18.1.1 */

 

    /* exact-width signed integer types */

typedef   signed          char int8_t;

typedef   signed short     int int16_t;

typedef   signed           int int32_t;

typedef   signed       __int64 int64_t;

 

    /* exact-width unsigned integer types */

typedef unsigned          char uint8_t;

typedef unsigned short     int uint16_t;

typedef unsigned           int uint32_t;

typedef unsigned       __int64 uint64_t;

 

    /* 7.18.1.2 */

 

    /* smallest type of at least n bits */

    /* minimum-width signed integer types */

typedef   signed          char int_least8_t;

typedef   signed short     int int_least16_t;

typedef   signed           int int_least32_t;

typedef   signed       __int64 int_least64_t;

 

    /* minimum-width unsigned integer types */

typedef unsigned          char uint_least8_t;

typedef unsigned short     int uint_least16_t;

typedef unsigned           int uint_least32_t;

typedef unsigned       __int64 uint_least64_t;

 

    /* 7.18.1.3 */

 

    /* fastest minimum-width signed integer types */

typedef   signed           int int_fast8_t;

typedef   signed           int int_fast16_t;

typedef   signed           int int_fast32_t;

typedef   signed       __int64 int_fast64_t;

 

    /* fastest minimum-width unsigned integer types */

typedef unsigned           int uint_fast8_t;

typedef unsigned           int uint_fast16_t;

typedef unsigned           int uint_fast32_t;

typedef unsigned       __int64 uint_fast64_t;

 

    /* 7.18.1.4 integer types capable of holding object pointers */

typedef   signed           int intptr_t;

typedef unsigned           int uintptr_t;

 

    /* 7.18.1.5 greatest-width integer types */

typedef   signed       __int64 intmax_t;

typedef unsigned       __int64 uintmax_t;

 

 

#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS)

 

    /* 7.18.2.1 */

 

    /* minimum values of exact-width signed integer types */

#define INT8_MIN                   -128

#define INT16_MIN                -32768

#define INT32_MIN          (~0x7fffffff)   /* -2147483648 is unsigned */

#define INT64_MIN  __ESCAPE__(~0x7fffffffffffffffll) /* -9223372036854775808 is unsigned */

 

    /* maximum values of exact-width signed integer types */

#define INT8_MAX                    127

#define INT16_MAX                 32767

#define INT32_MAX            2147483647

#define INT64_MAX  __ESCAPE__(9223372036854775807ll)

 

    /* maximum values of exact-width unsigned integer types */

#define UINT8_MAX                   255

#define UINT16_MAX                65535

#define UINT32_MAX           4294967295u

#define UINT64_MAX __ESCAPE__(18446744073709551615ull)

 

    /* 7.18.2.2 */

 

    /* minimum values of minimum-width signed integer types */

#define INT_LEAST8_MIN                   -128

#define INT_LEAST16_MIN                -32768

#define INT_LEAST32_MIN          (~0x7fffffff)

#define INT_LEAST64_MIN  __ESCAPE__(~0x7fffffffffffffffll)

 

    /* maximum values of minimum-width signed integer types */

#define INT_LEAST8_MAX                    127

#define INT_LEAST16_MAX                 32767

#define INT_LEAST32_MAX            2147483647

#define INT_LEAST64_MAX  __ESCAPE__(9223372036854775807ll)

 

    /* maximum values of minimum-width unsigned integer types */

#define UINT_LEAST8_MAX                   255

#define UINT_LEAST16_MAX                65535

#define UINT_LEAST32_MAX           4294967295u

#define UINT_LEAST64_MAX __ESCAPE__(18446744073709551615ull)

 

    /* 7.18.2.3 */

 

    /* minimum values of fastest minimum-width signed integer types */

#define INT_FAST8_MIN           (~0x7fffffff)

#define INT_FAST16_MIN          (~0x7fffffff)

#define INT_FAST32_MIN          (~0x7fffffff)

#define INT_FAST64_MIN  __ESCAPE__(~0x7fffffffffffffffll)

 

    /* maximum values of fastest minimum-width signed integer types */

#define INT_FAST8_MAX             2147483647

#define INT_FAST16_MAX            2147483647

#define INT_FAST32_MAX            2147483647

#define INT_FAST64_MAX  __ESCAPE__(9223372036854775807ll)

 

    /* maximum values of fastest minimum-width unsigned integer types */

#define UINT_FAST8_MAX            4294967295u

#define UINT_FAST16_MAX           4294967295u

#define UINT_FAST32_MAX           4294967295u

#define UINT_FAST64_MAX __ESCAPE__(18446744073709551615ull)

 

    /* 7.18.2.4 */

 

    /* minimum value of pointer-holding signed integer type */

#define INTPTR_MIN (~0x7fffffff)

 

    /* maximum value of pointer-holding signed integer type */

#define INTPTR_MAX   2147483647

 

    /* maximum value of pointer-holding unsigned integer type */

#define UINTPTR_MAX  4294967295u

 

    /* 7.18.2.5 */

 

    /* minimum value of greatest-width signed integer type */

#define INTMAX_MIN  __ESCAPE__(~0x7fffffffffffffffll)

 

    /* maximum value of greatest-width signed integer type */

#define INTMAX_MAX  __ESCAPE__(9223372036854775807ll)

 

    /* maximum value of greatest-width unsigned integer type */

#define UINTMAX_MAX __ESCAPE__(18446744073709551615ull)

 

    /* 7.18.3 */

 

    /* limits of ptrdiff_t */

#define PTRDIFF_MIN (~0x7fffffff)

#define PTRDIFF_MAX   2147483647

 

    /* limits of sig_atomic_t */

#define SIG_ATOMIC_MIN (~0x7fffffff)

#define SIG_ATOMIC_MAX   2147483647

 

    /* limit of size_t */

#define SIZE_MAX 4294967295u

 

    /* limits of wchar_t */

    /* NB we have to undef and redef because they're defined in both

     * stdint.h and wchar.h */

#undef WCHAR_MIN

#undef WCHAR_MAX

 

#if defined(__WCHAR32)

  #define WCHAR_MIN   0

  #define WCHAR_MAX   0xffffffffU

#else

  #define WCHAR_MIN   0

  #define WCHAR_MAX   65535

#endif

 

    /* limits of wint_t */

#define WINT_MIN (~0x7fffffff)

#define WINT_MAX 2147483647

 

#endif /* __STDC_LIMIT_MACROS */

 

#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS)

 

    /* 7.18.4.1 macros for minimum-width integer constants */

#define INT8_C(x)   (x)

#define INT16_C(x)  (x)

#define INT32_C(x)  (x)

#define INT64_C(x)  __ESCAPE__(x ## ll)

 

#define UINT8_C(x)  (x ## u)

#define UINT16_C(x) (x ## u)

#define UINT32_C(x) (x ## u)

#define UINT64_C(x) __ESCAPE__(x ## ull)

 

    /* 7.18.4.2 macros for greatest-width integer constants */

#define INTMAX_C(x)  __ESCAPE__(x ## ll)

#define UINTMAX_C(x) __ESCAPE__(x ## ull)

 

#endif /* __STDC_CONSTANT_MACROS */

 

    #ifdef __cplusplus

         }  /* extern "C" */

      }  /* namespace std */

    #endif /* __cplusplus */

  #endif /* __STDINT_DECLS */

 

  #ifdef __cplusplus

    #ifndef __STDINT_NO_EXPORTS

      using ::std::int8_t;

      using ::std::int16_t;

      using ::std::int32_t;

推荐阅读

史海拾趣

CalAmp公司的发展小趣事

在物联网领域,安全问题一直是业界关注的焦点。某年,CalAmp公司运营的一台服务器因配置错误,导致黑客可以通过该漏洞接入账号数据,甚至接管相关车辆。这一事件引起了业界的广泛关注。面对这一挑战,CalAmp公司迅速采取行动,加强了对服务器的安全配置和监控,同时积极与安全专家合作,共同解决存在的安全问题。通过这一事件的应对和改进,CalAmp公司不仅提升了自身的安全防护能力,也为整个物联网行业树立了良好的安全榜样。

这些故事展示了CalAmp公司在电子行业中的发展历程和取得的成就。无论是通过签署全球分销协议拓展市场、推出创新的车队管理解决方案、发展新业务领域还是积极应对物联网安全挑战,CalAmp公司都展现出了其卓越的技术实力和市场竞争力。这些努力不仅推动了公司自身的持续发展,也为整个电子行业的进步做出了积极贡献。

Display Engineering Services公司的发展小趣事

在某年第一季度,CalAmp公司发布了其财报数据。根据财报,该季度公司实现营收7089.1万美元,虽然比市场预期的7566万美元略低6.30%,但仍然展现了稳健的增长态势。同时,公司的每股收益为-0.11美元,低于预期的0.04美元,这可能与公司在研发和市场拓展方面的持续投入有关。尽管如此,CalAmp公司在无线通信解决方案应用领域的广泛布局和深厚的客户基础,使得其整体业绩依然保持稳健。

AND Displays公司的发展小趣事

为了降低成本、提高生产效率,AND Displays开始着手整合产业链。公司通过与上游原材料供应商建立长期合作关系,确保原材料的稳定供应和价格优势。同时,公司还加强了对下游客户的服务与支持,通过提供定制化解决方案和优质的售后服务,增强了客户黏性。此外,AND Displays还不断优化生产流程,提高生产效率,进一步降低了生产成本。

Aplus Flash Technology Inc公司的发展小趣事

Aplus Flash Technology Inc公司深知企业文化对于企业发展的重要性。因此,公司注重企业文化建设,积极营造积极向上、团结协作的工作氛围。公司定期举办各种团队建设活动,增强员工之间的凝聚力和归属感。同时,公司还建立了完善的激励机制和培训体系,鼓励员工不断学习和创新。这些举措使公司拥有一支高素质、高效率的团队,为公司的持续发展提供了有力保障。

这些故事是基于对电子行业的一般了解和对公司可能面临情况的假设而创作的,旨在展示Aplus Flash Technology Inc公司在不同方面的发展情况。请注意,这些故事并非基于真实事件,因此可能与公司的实际情况存在出入。如需了解Aplus Flash Technology Inc公司的真实发展情况,建议查阅相关报道或公司官方资料。

兆易创新(GigaDevice)公司的发展小趣事

Aplus Flash Technology Inc公司自成立以来,一直致力于闪存技术的研发与生产。在电子行业的激烈竞争中,公司凭借对技术的深入理解和持续创新,成功研发出了一款高性能、低成本的闪存芯片,迅速占据了市场份额。这款芯片不仅满足了消费者对电子设备存储容量和速度的需求,还因其出色的稳定性和耐用性赢得了客户的广泛好评。Aplus Flash Technology Inc公司因此成为了闪存市场的佼佼者,为公司的进一步发展奠定了坚实基础。

Hamamatsu公司的发展小趣事

随着电子行业的快速发展,Aplus Flash Technology Inc公司意识到单凭自身的力量难以应对市场的快速变化。于是,公司积极寻求与其他企业的战略合作,共同开发新产品、拓展新市场。通过与一家知名手机制造商的合作,Aplus Flash Technology Inc公司的闪存芯片成功应用于多款热销手机中,大大提高了公司的知名度和市场份额。此外,公司还与多家芯片设计公司和半导体制造商建立了紧密的合作关系,共同推动电子行业的发展。

问答坊 | AI 解惑

T6963控制器应用

带T6963控制器的液晶屏的程序编写…

查看全部问答>

气体放电的现象及应用

在现实生活中我们会遇到很多气体放电的现象,有的时候我们会觉得不可思议,其实这些现象都是能用科学来解释的。科学家们通过对他们的研究,把这些现象的原理应用在我们的生活中,给我们带来了很多益处,在经过科学家的进一步研究后将会给我们带来更 ...…

查看全部问答>

初学arm的困惑,忘高手帮忙

大家好,我是一个新手,我现在在用一个mini2440的学习板在学习,我的电脑是笔记本,没有那种窜口,所以买了一个usb转窜口的线接上了,在ads调试程序 以后准备考进学习板中进行,但是uartselect不知道该用哪个好?学校的学习板用的是台式机,所以选u ...…

查看全部问答>

湿度采集

我现在想用个电容式湿度传感器,来采集湿度,用555采频率电路我可以做,假如我不用采频率的方式怎么做?有没有其它方法,介绍个......…

查看全部问答>

请问可以用c语言在VS2005中开发WinCE的应用程序吗?

如题。。。 如果可以能否提供这方面的资料 不胜感激!…

查看全部问答>

用于图形,算法的ARM+DSP双核开发系统的问题

实验室的一个嵌入式课题,需要不断的对70*70的矩阵做运算处理,并且要有一定的GUI能力。光用2410来跑,可能是一个很吃力的事情,所以想选择arm+dsp的平台,想请教一下大家,有没有比较好的arm+dsp6的开发板,因为硕士时间比较短,所以想直接用开发 ...…

查看全部问答>

vxworks 广播数据包

控创的单扳机,扩展为双网卡(fei0,eeE0) eeE0:192.168.1.100:0xffffff00  udp协议组网 网上其他设备向某一端口 广播数据 广播地址:192.168.1.255 正确创建socket 后,接收不到广播数据包. 如果同一端口不广播,而是点对点则能正确收 ...…

查看全部问答>

求jtag烧写程序及驱动

cpu: s3c2510 flash: AM29lv320db jtag:20-pin boot: armboot for samsung v3.1t --------------------------------------- 我把板子上的boot损坏了,板子上提供了jtag-20pin,但没有提供jtag连线,和烧写软件及驱动。 烧写软件 是不是 还和jt ...…

查看全部问答>

如果用上位机的话一定要开串口中断吗

如果用上位机的话一定要开串口中断吗?…

查看全部问答>

请大家帮忙!剖析Fx-1S小程序。

按下X1 ,Y1输出。5秒后Y1关断, Y2输出。X2按下后无输出。 程序1能运行,程序2不能。请大家说初具体时序或每步执行后输入映像和输出映像寄存器的值。步甚感激!  …

查看全部问答>