如何使用指针替换字符串中的字符? (在c代码中)

时间:2015-08-26 14:32:09

标签: c pointers reference

如何使用指针替换字符串中的字符? (在c代码中)

这是我的代码:

#include <stdio.h>
#include <string.h>

unsigned char code[] = "Hello world!\n";
main()
{

        printf("String Length:  %d\n", strlen(code));
        printf("Original String: %s\n", code);

        char &code[7] = "W";    
        char &code[8] = "a";
        char &code[9] = "l";
        char &code[10] = "e";
        char &code[11] = "s";

        printf("New String: %s\n", code);

}

1 个答案:

答案 0 :(得分:2)

您可以指定从零开始的数组索引:

   code[6] = 'W';    
   code[7] = 'a';
   code[8] = 'l';
   code[9] = 'e';
   code[10] = 's';

字符文字用单引号而不是双引号指定。

数组变量是第一个元素地址的同义词。如果您特别想使用指针语法,则可以将code[i]替换为*(code + i)。例如:

   *(code + 6) = 'W';    
   *(code + 7) = 'a';
   *(code + 8) = 'l';
   *(code + 9) = 'e';
   *(code + 10) = 's';