我有以下C代码
#include int main(void){ char c[] = "ABC" printf("%s ", c); c[1] = 'B'; printf("%s", c); return 0; }
我想要的输出是ABC BBC
但我得到的输出是ABC ABC
。 如何替换String / char数组中的第一个字符?
C数组中的索引从0
开始。 所以你必须用c[0] = 'B'
替换c[1] = 'B'
c[0] = 'B'
。
另外,从今天看到类似的问题: 输出C ++中的微笑 – 我在那里放了更详细的描述:)
C数组是零基数。 数组的第一个元素位于第零个位置。
c[0] = 'B';
尝试
c[0] = 'B';
数组从0开始
下面是一个实际工作的代码!!!!
Ammar Hourani
char * replace_char(char * input, char find, char replace)
{
char * output = (char*)malloc(strlen(input)); for (int i = 0; i < strlen(input); i++) { if (input[i] == find) output[i] = replace; else output[i] = input[i]; } output[strlen(input)] = ' '; return output;
}
以上就是c/c++开发分享C将char数组中的一个字符替换为另一个字符相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/522943.html