心脏不好挂什么科室| 大便拉不出来是什么原因| 梦见自己的手镯断了什么意思| 为什么嘴巴会臭| 梦见自己尿裤子了是什么意思| 林冲为什么叫豹子头| 腿硬邦邦的是什么原因| 过敏性紫癜有什么危害| 半夜猫叫有什么预兆| 乙肝通过什么传播| 为什么庙里不让孕妇去| 呼吸内科主要看什么病| 窦性心律室性早搏是什么意思| otc是什么药| 兹禧属什么生肖| 八嘎呀路是什么意思| 拜阿司匹灵是什么药| 谢霆锋什么学历| 氯吡格雷治什么病| 女人吃秋葵有什么好处| 梦见包丢了是什么意思| 61是什么意思| hcg偏高是什么原因| 属蛇的和什么属相最配| 扁桃体切除对身体有什么影响| 胆小怕事是什么生肖| 眼睛为什么会近视| 智齿是什么| 养老院靠什么挣钱| 脾阳不足吃什么中成药| 婴儿老打嗝是什么原因| 杭州有什么| 花开半夏什么意思| 结扎什么意思| 贫血应该吃什么| 梦见吃月饼是什么意思| 1983年出生是什么命| 白炽灯是什么灯| 苹果手机为什么那么贵| 未见胎芽是什么意思| 均金念什么| 鱼刺卡喉咙挂什么科| 硬不起来是什么原因| 别墅是什么意思| 沙漠有什么动物| 拉脱水是什么症状| 白头发吃什么维生素能变黑| 什么是肺腺瘤| 农历6月21日是什么星座| hcho是什么意思| 赵本山什么学历| 上颚起泡是什么原因| 内急是什么意思| 莫须有什么意思| 嘴唇起泡是什么原因引起的| 口角炎用什么药膏| 记字五行属什么| 扩张是什么意思| 理想主义者是什么意思| 一什么森林| 流鼻血看病挂什么科| 办理生育登记有什么用| 寓教于乐什么意思| 什么是破窗效应| 晴雨伞是什么意思| 肝病吃什么药| 月经量少什么原因| 眉心长痘是什么原因| 白菜什么时候播种| 什么是生化| 梦到吃花生是什么意思| 世界上什么最大| 晶莹的意思是什么| 什么是抗凝药物| 没事找事是什么意思| 酸辣粉是什么粉| 脖子淋巴结肿大是什么原因| 肠系膜淋巴结炎吃什么药| 40岁男人学什么乐器好| 秋水伊人是什么意思| 来月经不能吃什么水果| 回应是什么意思| 吃石斛有什么作用| 拔智齿当天可以吃什么| 调节是什么意思| 结石是什么原因引起的| 浑身瘙痒是什么原因| 县里的局长是什么级别| 眼角发黄是什么原因| 爱屋及乌什么意思| 力排众议是什么意思| 梦见给死人烧纸钱是什么意思| 什么山不能爬脑筋急转弯| 长命百岁的动物是什么| 热敷眼睛有什么好处| 人缺钾有什么症状| 眼袋大用什么方法消除| 冻顶乌龙茶是什么茶| 眼睛肿是什么原因| 灌肠是什么| 什么鸟| piv是什么病毒| 双肺上叶肺大泡是什么意思| co是什么元素| 世界大同是什么意思| 老人大小便失禁是什么原因造成的| 知见是什么意思| 优柔寡断是什么意思| jeans是什么品牌| 本番是什么意思| 6月初三是什么日子| 联通查话费打什么号码| 什么是气溶胶| 低血压和低血糖有什么区别| 什么水果是钙中之王| 紫丁香什么时候开花| 秋田狐鱼钩适合钓什么鱼| 男生生日送什么礼物好| 蛋白粉吃多了有什么危害| 九品芝麻官是什么级别| 化学键是什么| 耳麦是什么| pls是什么意思| 被老鼠咬了有什么预兆| 梅毒通过什么传播| 11月2日什么星座| 星辰大海是什么意思| 说一个人轴是什么意思| 子宫内膜6mm意味着什么| 阑尾炎痛起来什么感觉| 阴茎溃疡用什么药| 情人节什么时候| 手癣用什么药膏效果好| 免疫力和抵抗力有什么区别| 多糖是什么意思| 铂字五行属什么| 眩晕症吃什么药最好| 什么奶粉对肠胃吸收好| 什么是粘胶纤维| 什能组什么词| 老年人适合吃什么水果| 啦啦是什么意思| 吃完饭就打嗝是什么原因| 多西环素片主治什么| 胃糜烂要吃什么药| 喜欢紫色的人是什么性格| 李隆基是李世民的什么人| 夹生饭是什么意思| 坚果补充什么营养成分| 1月24号什么星座| 葛洲坝集团是什么级别| 血糖高有什么表现| 子宫出血是什么原因| 嘴里苦是什么原因| sp是什么面料成分| 早上起来眼皮肿是什么原因| 风花雪月什么意思| suvmax是什么意思| 男人都喜欢什么样的女人| 黄体不足吃什么药| 7月17日是什么日子| 2028年是什么年| 新疆是什么民族| 魈是什么意思| 肉碱是什么| 什么是抗性淀粉| 冰丝是什么材料| 落叶像什么| 尿黄是什么原因引起的男性| 梦见红棺材是什么征兆| 小腿冰凉是什么原因| 生化妊娠是什么意思| 是什么就是什么| 在此是什么意思| 疣体是什么病| ast是什么意思| 上睑下垂是什么原因造成的| 兔子不吃窝边草是什么生肖| 火高念什么| 瓜子脸适合剪什么发型| 梦见自己光脚走路是什么意思| 避孕套是什么材质| 什么是牛蒡| 百合病是什么病| 小酌怡情下一句是什么| 甲功三项是检查什么| 血糖高吃什么好能降糖| 胆囊炎是什么原因引起的| 吃炒黑豆有什么好处和坏处| 关节疼痛挂什么科| 长命锁一般由什么人送| 皮炎不能吃什么食物| 梦遗是什么| 甲鱼吃什么食物| 属鼠女和什么属相最配| 射手是什么星象| 什么叫阳虚| 肩膀疼什么原因| 手机壳什么材质最好| 口甜是什么原因引起的| 梦见买车是什么意思| 他克莫司是什么药| 恶性贫血是什么意思| 吃什么对肺好| 唇炎用什么药膏| 美丽的动物是什么生肖| 指甲很薄很软是为什么| 容易紧张是什么原因| 角膜炎吃什么药| 小孩睡觉流口水是什么原因| 比肩劫财是什么意思| 客厅挂钟放在什么位置好| 疱疹有什么症状表现| 三点水加盆读什么| 男性更年期吃什么药| 血压高有什么好办法| kiko是什么意思| 什么清什么秀| 离宅是什么意思| 补办身份证需要带什么| 为什么16岁不能吃维生素B| 女人梦见烧纸什么预兆| 02年的属什么| 吃什么尿酸高| 地盆是一种什么病| 结肠炎吃什么食物好| 闰6月是什么意思| 二级建造师什么时候出成绩| 孩子第一次来月经要注意什么| 喝苹果醋有什么好处| 味精是什么提炼出来的| 车加昆念什么| 什么鱼不属于发物| champion是什么牌子| 两融余额是什么意思| 子宫内膜什么时候脱落| 1984年是什么命| 减肥晚上吃什么| 五大三粗是什么意思| 精心的什么| 富贵命是什么生肖| 双侧乳腺腺病是什么意思| 吃b族维生素有什么好处| 司马光和司马迁是什么关系| 安全起见是什么意思| 康复新液是什么做的| 什么鱼炖豆腐好吃| 暗是什么意思| 剖腹产后吃什么| 真知灼见什么意思| 核桃什么时候吃最好| 薄荷叶有什么功效| 917是什么意思| 红花有什么作用| 什么时间入伏| 黄辣丁是什么鱼| 左侧脖子疼是什么原因| 规则是什么意思| 1975年是什么命| 白羊座是什么星座| 八面玲珑指什么生肖| 梦到打死蛇是什么意思| 总是口腔溃疡是什么原因| img是什么意思| 百度Jump to content

发痧吃什么药可以断根

From Wikipedia, the free encyclopedia
百度   也就是说,Nectome的大脑保存程序最好和有医生协助的安乐死相结合,以实现其合法性。

Cover of the C99 standards document

C99 (C9X during its development, formally ISO/IEC 9899:1999) is a past version of the C programming language open standard.[1] It extends the previous version (C90) with new features for the language and the standard library, and helps implementations make better use of available computer hardware, such as IEEE 754-1985 floating-point arithmetic, and compiler technology.[2] The C11 version of the C programming language standard, published in 2011, updates C99.

History

[edit]

After ANSI produced the official standard for the C programming language in 1989, which became an international standard in 1990, the C language specification remained relatively static for some time, while C++ continued to evolve, largely during its own standardization effort. Normative Amendment 1 created a new standard for C in 1995, but only to correct some details of the 1989 standard and to add more extensive support for international character sets. The standard underwent further revision in the late 1990s, leading to the publication of ISO/IEC 9899:1999 in 1999, which was adopted as an ANSI standard in May 2000. The language defined by that version of the standard is commonly referred to as "C99". The international C standard is maintained by the working group ISO/IEC JTC1/SC22/WG14.

Design

[edit]

C99 is, for the most part, backward compatible with C89, but it is stricter in some ways.[3]

In particular, a declaration that lacks a type specifier no longer has int implicitly assumed. The C standards committee decided that it was of more value for compilers to diagnose inadvertent omission of the type specifier than to silently process legacy code that relied on implicit int. In practice, compilers are likely to display a warning, then assume int and continue translating the program.

C99 introduced several new features, many of which had already been implemented as extensions in several compilers:[4]

  • inline functions
  • intermingled declarations and code: variable declaration is no longer restricted to file scope or the start of a compound statement (block)
  • several new data types, including long long int, optional extended integer types, an explicit Boolean data type (_Bool), and complex types (_Complex type specifier) to represent complex numbers
  • variable-length arrays (although subsequently relegated in C11 to a conditional feature that implementations are not required to support)
  • flexible array members
  • support for one-line comments beginning with //, as in BCPL, C++ and Java
  • new library functions, such as snprintf
  • new headers, such as <stdbool.h>, <complex.h>, <tgmath.h>, and <inttypes.h>
  • type-generic math (macro) functions, in <tgmath.h>, which select a math library function based upon float, double, or long double arguments, etc.
  • optional support for IEEE 754-1985 floating point
  • designated initializers. For example, initializing a structure by field names: struct Point p = { .x = 1, .y = 2 };[5]
  • compound literals. For instance, it is possible to construct structures in function calls: function((struct x) {1, 2})[6]
  • support for variadic macros (macros with a variable number of arguments)
  • restrict qualification allows more aggressive code optimization, removing compile-time array access advantages previously held by FORTRAN over ANSI C[7]
  • universal character names, which allows user variables to contain other characters than the standard character set: four-digit \u0040 or eight-digit hexadecimal sequences \U0001f431
  • keyword static in array indices in parameter declarations[8]

Parts of the C99 standard are included in the current version of the C++ standard, including integer types, headers, and library functions. Variable-length arrays are not among these included parts because C++'s Standard Template Library already includes similar functionality.

IEEE 754 floating-point support

[edit]

A major feature of C99 is its numerics support, and in particular its support for access to the features of IEEE 754-1985 (also known as IEC 60559) floating-point hardware present in the vast majority of modern processors (defined in "Annex F IEC 60559 floating-point arithmetic"). Platforms without IEEE 754 hardware can also implement it in software.[2]

On platforms with IEEE 754 floating point:

  • float is defined as IEEE 754 single precision, double is defined as double precision, and long double is defined as IEEE 754 extended precision (e.g., Intel 80-bit double extended precision on x86 or x86-64 platforms), or some form of quad precision where available; otherwise, it is double precision.
  • The four arithmetic operations and square root are correctly rounded as defined by IEEE 754.
    FLT_EVAL_METHOD float double long double
    0 float double long double
    1 double double long double
    2 long double long double long double
  • Expression evaluation is defined to be performed in one of three well-defined methods, indicating whether floating-point variables are first promoted to a more precise format in expressions: FLT_EVAL_METHOD == 2 indicates that all internal intermediate computations are performed by default at high precision (long double) where available (e.g., 80 bit double extended), FLT_EVAL_METHOD == 1 performs all internal intermediate expressions in double precision (unless an operand is long double), while FLT_EVAL_METHOD == 0 specifies each operation is evaluated only at the precision of the widest operand of each operator. The intermediate result type for operands of a given precision are summarized in the adjacent table.

FLT_EVAL_METHOD == 2 tends to limit the risk of rounding errors affecting numerically unstable expressions (see IEEE 754 design rationale) and is the designed default method for x87 hardware, but yields unintuitive behavior for the unwary user;[9] FLT_EVAL_METHOD == 1 was the default evaluation method originally used in K&R C, which promoted all floats to double in expressions; and FLT_EVAL_METHOD == 0 is also commonly used and specifies a strict "evaluate to type" of the operands. (For gcc, FLT_EVAL_METHOD == 2 is the default on 32 bit x86, and FLT_EVAL_METHOD == 0 is the default on 64 bit x86-64, but FLT_EVAL_METHOD == 2 can be specified on x86-64 with option -mfpmath=387.) Before C99, compilers could round intermediate results inconsistently, especially when using x87 floating-point hardware, leading to compiler-specific behaviour;[10] such inconsistencies are not permitted in compilers conforming to C99 (annex F).

Example

[edit]

The following annotated example C99 code for computing a continued fraction function demonstrates the main features:

#include <assert.h>
#include <fenv.h>
#include <float.h>
#include <math.h>
#include <stdio.h>
#include <stdbool.h>
#include <tgmath.h>

double compute_fn(double z) {  // [1] 
    #pragma STDC FENV_ACCESS ON  // [2]

    assert(FLT_EVAL_METHOD == 2);  // [3]

    if (isnan(z)) {  // [4]
        puts("z is not a number");
    }

    if (isinf(z)) {
        puts("z is infinite");
    }

    long double r = 7.0 - 3.0 / (z - 2.0 - 1.0 / (z - 7.0 + 10.0 / (z - 2.0 - 2.0 / (z - 3.0)))); // [5, 6]

    feclearexcept(FE_DIVBYZERO);  // [7]

    bool raised = fetestexcept(FE_OVERFLOW);  // [8]

    if (raised) {
        puts("Unanticipated overflow.");
    }

    return r;
}

int main(void) {
    #ifndef __STDC_IEC_559__
    puts("Warning: __STDC_IEC_559__ not defined. IEEE 754 floating point not fully supported."); // [9]
    #endif

    #pragma STDC FENV_ACCESS ON

    #ifdef TEST_NUMERIC_STABILITY_UP
    fesetround(FE_UPWARD);                   // [10]
    #elif TEST_NUMERIC_STABILITY_DOWN
    fesetround(FE_DOWNWARD);
    #endif

    printf("%.7g\n", compute_fn(3.0));
    printf("%.7g\n", compute_fn(NAN));

    return 0;
}

Footnotes:

  1. Compile with: gcc -std=c99 -mfpmath=387 -o test_c99_fp test_c99_fp.c -lm
  2. As the IEEE 754 status flags are manipulated in this function, this #pragma is needed to avoid the compiler incorrectly rearranging such tests when optimising. (Pragmas are usually implementation-defined, but those prefixed with STDC are defined in the C standard.)
  3. C99 defines a limited number of expression evaluation methods: the current compilation mode can be checked to ensure it meets the assumptions the code was written under.
  4. The special values such as NaN and positive or negative infinity can be tested and set.
  5. long double is defined as IEEE 754 double extended or quad precision if available. Using higher precision than required for intermediate computations can minimize round-off error[11] (the typedef double_t can be used for code that is portable under all FLT_EVAL_METHODs).
  6. The main function to be evaluated. Although it appears that some arguments to this continued fraction, e.g., 3.0, would lead to a divide-by-zero error, in fact the function is well-defined at 3.0 and division by 0 will simply return a +infinity that will then correctly lead to a finite result: IEEE 754 is defined not to trap on such exceptions by default and is designed so that they can very often be ignored, as in this case. (If FLT_EVAL_METHOD is defined as 2 then all internal computations including constants will be performed in long double precision; if FLT_EVAL_METHOD is defined as 0 then additional care is need to ensure this, including possibly additional casts and explicit specification of constants as long double.)
  7. As the raised divide-by-zero flag is not an error in this case, it can simply be dismissed to clear the flag for use by later code.
  8. In some cases, other exceptions may be regarded as an error, such as overflow (although it can in fact be shown that this cannot occur in this case).
  9. __STDC_IEC_559__ is to be defined only if "Annex F IEC 60559 floating-point arithmetic" is fully implemented by the compiler and the C library (users should be aware that this macro is sometimes defined while it should not be).
  10. The default rounding mode is round to nearest (with the even rounding rule in the halfway cases) for IEEE 754, but explicitly setting the rounding mode toward + and - infinity (by defining TEST_NUMERIC_STABILITY_UP etc. in this example, when debugging) can be used to diagnose numerical instability.[12] This method can be used even if compute_fn() is part of a separately compiled binary library. But depending on the function, numerical instabilities cannot always be detected.

Version detection

[edit]

A standard macro __STDC_VERSION__ is defined with value 199901L to indicate that C99 support is available. As with the __STDC__ macro for C90, __STDC_VERSION__ can be used to write code that will compile differently for C90 and C99 compilers, as in this example that ensures that inline is available in either case (by replacing it with static in C90 to avoid linker errors).

#if __STDC_VERSION__ >= 199901L
  /* "inline" is a keyword */
#else
# define inline static
#endif

Implementations

[edit]

Most C compilers provide support for at least some of the features introduced in C99.

Historically, Microsoft has been slow to implement new C features in their Visual C++ tools, instead focusing mainly on supporting developments in the C++ standards.[13] However, with the introduction of Visual C++ 2013 Microsoft implemented a limited subset of C99, which was expanded in Visual C++ 2015.[14]

Future work

[edit]

Since ratification of the 1999 C standard, the standards working group prepared technical reports specifying improved support for embedded processing, additional character data types (Unicode support), and library functions with improved bounds checking. Work continues on technical reports addressing decimal floating point, additional mathematical special functions, and additional dynamic memory allocation functions. The C and C++ standards committees have been collaborating on specifications for threaded programming.

The next revision of the C standard, C11, was ratified in 2011.[41] The C standards committee adopted guidelines that limited the adoption of new features that have not been tested by existing implementations. Much effort went into developing a memory model, in order to clarify sequence points and to support threaded programming.

See also

[edit]

References

[edit]
  1. ^ "ISO/IEC 9899:1999 - Programming languages - C". Iso.org. 8 December 2011. Retrieved 8 April 2014.
  2. ^ a b "IEEE 754 Support in C99" (PDF). IEEE. Archived from the original (PDF) on 28 October 2017. Retrieved 15 July 2021.
  3. ^ "Standards - Using the GNU Compiler Collection (GCC)". Gcc.gnu.org. Retrieved 8 April 2014.
  4. ^ "C Dialect Options - Using the GNU Compiler Collection (GCC)". Gcc.gnu.org. 6 May 2009. Retrieved 8 April 2014.
  5. ^ "Using the GNU Compiler Collection (GCC): Designated Initializers". gnu.org. Retrieved 18 September 2019.
  6. ^ "Using the GNU Compiler Collection (GCC): Compound Literals". gnu.org. Retrieved 31 January 2016.
  7. ^ Ulrich Drepper (23 October 2007). "What every programmer should know about memory". LWN.net. Retrieved 3 April 2015.
  8. ^ ISO/IEC 9899:1999 specification, TC3 (PDF). p. 119, § 6.7.5.3 Function declarators (including prototypes) para. 7.
  9. ^ Doug Priest (1997). "Differences Among IEEE 754 Implementations".
  10. ^ Jack Woehr (1 November 1997). "A conversation with William Kahan".
  11. ^ William Kahan (11 June 1996). "The Baleful Effect of Computer Benchmarks upon Applied Mathematics, Physics and Chemistry" (PDF).
  12. ^ William Kahan (11 January 2006). "How Futile are Mindless Assessments of Roundoff in Floating-Point Computation?" (PDF).
  13. ^ Peter Bright (29 June 2013). "C99 acknowledged at last as Microsoft lays out its path to C++14". Ars Technica. Retrieved 9 January 2015.
  14. ^ a b c Brenner, Pat. "What's New for Visual C++ in Visual Studio 2015". Microsoft Developer Network. Retrieved 27 April 2015.
  15. ^ "Using the x86 Open64 Compiler Suite" (PDF). Developer.amd.com. Archived (PDF) from the original on 24 January 2022. Retrieved 2 March 2022.
  16. ^ "cc65 - a freeware C compiler for 6502 based systems". Retrieved 14 September 2011.
  17. ^ "C/C++ interpreter Ch C99 features". SoftIntegration, Inc. 15 February 2008. Retrieved 15 February 2008.
  18. ^ "Clang Compiler User's Manual". Retrieved 14 October 2017.
  19. ^ "The CompCert C verified compiler documentation and user's manual (Version 3.10)". 19 November 2021. Retrieved 3 March 2022.
  20. ^ "libfirm homepage". Retrieved 4 February 2014.
  21. ^ "C Language Implementation - Digital Mars". Retrieved 14 September 2011.
  22. ^ "Status of C99 features in GCC". Free Software Foundation, Inc. 28 July 2021. Retrieved 13 August 2021.
  23. ^ "Status of C99 features in GCC 4.6". Free Software Foundation, Inc. 23 May 2013. Retrieved 23 May 2013.
  24. ^ "Status of C99 features in GCC 4.7". Free Software Foundation, Inc. 23 May 2013. Retrieved 23 May 2013.
  25. ^ "Semantics of Floating Point Math in GCC". 20 July 2018. Retrieved 12 August 2018.
  26. ^ "IBM C for AIX, V6.0 Now Supports the C99 Standard". 2 July 2002. Retrieved 31 January 2016.
  27. ^ "IBM - XL C/C++ for AIX". Retrieved 31 January 2016.
  28. ^ "IBM Rational Logiscope support for C99 standard - United States". 24 February 2012. Retrieved 31 January 2016.
  29. ^ "Reader Q&A: What about VC++ and C99?". Sutter’s Mill. 3 May 2012. Retrieved 31 January 2016.
  30. ^ "A.27 Use of C99 Variable Length Arrays". Microsoft. Retrieved 31 January 2016.
  31. ^ "Microsoft to C99 Developers: Use ISO C++". InfoQ. Retrieved 31 January 2016.
  32. ^ "C99 library support in Visual Studio 2013". Microsoft. 19 July 2013. Retrieved 31 January 2016.
  33. ^ "C++11/14 STL Features, Fixes, And Breaking Changes In VS 2013". Blogs.msdn.com. 28 June 2013. Retrieved 8 April 2014.
  34. ^ "Announcing full support for a C/C++ conformant preprocessor in MSVC". Microsoft. 27 March 2020. Retrieved 17 September 2020.
  35. ^ "C99 compliance in Open Watcom". Archived from the original on 3 May 2015. Retrieved 25 September 2015.
  36. ^ "Pelles C Overview". January 2013. Archived from the original on 13 March 2022. Retrieved 2 March 2022.
  37. ^ "Sun Studio 12: C Compiler 5.9 Readme". Sun Microsystems, Inc. 31 May 2007. Retrieved 23 September 2012.
  38. ^ "Tiny C Compiler Reference Documentation". Retrieved 31 January 2016.
  39. ^ According to the project's TODO list complex types are the only missing C99 feature. Variable Length Arrays have been added in TCC 0.9.26 [1]
  40. ^ "TCC : Tiny C Compiler". Retrieved 31 January 2016.
  41. ^ "Standards - Using the GNU Compiler Collection (GCC)". Gcc.gnu.org. Retrieved 8 April 2014.

Further reading

[edit]
[edit]
Preceded by C language standards Succeeded by
肚脐右边疼是什么原因 节食是什么意思 鱼油是什么 胎心停了是什么原因引起的 眼睛发涩是什么原因导致的
什么时候打仗 湿疹是什么症状图片 淋球菌阳性是什么病 11五行属什么 失眠用什么药
肝主什么 脚有点浮肿是什么原因 肌肉拉伤看什么科室 葡萄的茎属于什么茎 刚刚怀孕有什么症状
大便为什么是黑色的是什么原因 阿奇霉素主治什么 三虫念什么 棕色皮鞋配什么颜色裤子 容易上火是什么原因
胆囊切除对身体有什么影响bjhyzcsm.com 拉肚子发烧是什么原因hcv8jop5ns1r.cn 相合是什么意思hcv9jop0ns5r.cn 梅毒吃什么药好得快chuanglingweilai.com 女人消瘦应该检查什么beikeqingting.com
杂是什么意思hcv9jop6ns7r.cn 突然手发抖是什么原因hcv9jop3ns2r.cn 蚊子怕什么hcv9jop0ns9r.cn 木樨是什么意思hcv8jop0ns8r.cn 黄花菜不能和什么一起吃hcv8jop5ns6r.cn
美国为什么打朝鲜hcv8jop0ns0r.cn 吃什么对肺有好处wzqsfys.com 苹能组什么词hcv9jop5ns6r.cn 长发公主叫什么名字hcv8jop4ns9r.cn 阴历是什么hcv8jop6ns8r.cn
黑京念什么hcv9jop3ns2r.cn 5月6号是什么星座hcv9jop4ns8r.cn 口了又一是什么字hcv8jop9ns3r.cn 道心是什么意思hcv9jop2ns9r.cn 舒肝解郁胶囊治什么病hcv8jop6ns1r.cn
百度