【发布时间】:2021-11-12 20:22:11
【问题描述】:
我编写了以下 c 代码来更新 char 数组 rb 但它正在打印垃圾值
#include <stdio.h>
void update(char* buff){
char word[] = "HII_O";
buff = word;
return;
}
int main(){
char rb[6];
update(rb);
rb[5] = '\0';
printf("[%s]\n",rb);
return 0;
}
限制是我们不能使用任何其他库。那么如何解决这个问题
【问题讨论】:
-
buff = word->strcpy(buf, word)。目前您只修改本地参数。 -
@mediocrevegetable1 但这需要 string.h
-
制作自己的
strcpy函数非常简单。您只需要在其位置放置一个for循环并逐个字符地将word复制到buff。 -
buff[0] = word[0]; buf[1] = word[1];等。循环执行。 -
@kaylum 明白了,
标签: arrays c c-strings string-literals strcpy