C 插入“;";“之后”;";在不带“回火”的字符串中;";

C 插入“;";“之后”;";在不带“回火”的字符串中;";,c,C,目标是在所有字母“T”出现后插入“E” 但下面的代码就是这样做的: 一旦检测到字符“T” 它将“T”替换为另一个“T”,然后插入“E” 如何修改它,使它不会用另一个“T”替换“T”,因为它看起来像是额外的工作 相反,它可以简单地保留现有的“T”。。在其后面移动并插入“E” 只需复制字符,当您看到您已复制了T,请复制E s1[n] = s[i]; n++; if (s[i] == 'T') { s1[n] = 'E'; n++; } s1和s是不同的。您打算在s中插入的内容是什么

目标是在所有字母“T”出现后插入“E”

但下面的代码就是这样做的:

一旦检测到字符“T”

它将“T”替换为另一个“T”,然后插入“E”

如何修改它,使它不会用另一个“T”替换“T”,因为它看起来像是额外的工作

相反,它可以简单地保留现有的“T”。。在其后面移动并插入“E”


只需复制字符,当您看到您已复制了
T
,请复制
E

s1[n] = s[i];
n++;    
if (s[i] == 'T')
{
  s1[n] = 'E';
  n++;
}

s1
s
是不同的。您打算在
s
中插入的内容是什么?
s1
s
的新修改版本。在这种情况下,T不是被T取代,而是简单地表示“复制”。这与问题不是很像吗?请不要提出“垃圾”问题,但请先花点时间澄清一下你到底想问什么。你不是在几个小时前问了一个几乎相同的关于“%”->“%%”的问题吗?
s1[n] = s[i];
n++;    
if (s[i] == 'T')
{
  s1[n] = 'E';
  n++;
}