我编写了这个函数,它应该执行 StringPadRight (“ Hello”,10,“0”)-> “ Hello00000”。
char *StringPadRight(char *string, int padded_len, char *pad) {
int len = (int) strlen(string);
if (len >= padded_len) {
return string;
}
int i;
for (i = 0; i < padded_len - len; i++) {
strcat(string, pad);
}
return string;
}
它起作用了,但有些奇怪的副作用,一些其他的变量被改变了。我该怎么补救?