【发布时间】:2020-03-16 11:54:47
【问题描述】:
我对在 c 中增加一个字符有点不理解。 假设:
char c = 'A';
现在如果我执行c+1,c 中的值将是'B'。这可以。
但是为什么当我执行以下操作时:
c = c + argv[1][2]
那我在c 中得到了'r',为什么?
请假设参数是"in12345",那么argv[1][2]等于1。
我想要做的是一些输入,假设 ABCDEF 是在我以循环方式从参数中接收 BDFHJG 时接收 BDFHJG。但我不明白为什么上述方法对我不起作用。
为什么它不工作,我可以做些什么来解决它?
【问题讨论】:
-
'A'+'1'或'A'+'3'到底有什么意义? -
argv[1][2]等于 字符值'1',而不是整数值1。您正在将字符 (ASCII 49) 的编码值添加到c。 -
@JohnBode 请使用答案部分,而不是 cmets 部分来回答问题。干杯