哪个C版本引入了#stringizing和##连接运算符?

时间:2017-10-24 03:30:23

标签: c

哪个C版本引入了#字符串化和##连接运算符? 我找不到这方面的参考。 我知道在C89中引入了enum

2 个答案:

答案 0 :(得分:2)

import random while True: cardValue = random.randint(2,14) cardSuit = random.randint(0,3) humanCard = random.randint(2,14) humanSuit = random.randint(0,3) # do whatever you do to print the cards if humanCard > cardValue: print ("Human Wins!") break # exit while loop elif humanCard < cardValue: print ("Computer Wins!") break # exit while loop else: # they draw same card print ("It's a draw!") # keep going while True: continue #运算符都添加到第一个C标准 - C89(ANSI)或C90(ISO)标准。委员会补充说,因为现有技术不一致,不易标准化(反正也不一致)。

您需要阅读Rationale for the C Standard的§6.10.3.2,其中##运算符被讨论为标准委员会的发明,而§6.10.3.3#运算符是##讨论。正式地说,这是C99的基本原理,但它是C90基本原理的延伸,并且清楚地记录了在C99中添加某些内容的时间。遗憾的是,没有相应的C11理论文件。

答案 1 :(得分:0)

自C89以来,###运算符一直被引入。

请参阅C89 3.8.3.2 The # operator3.8.3.3 The ## operator