void memSet(char destination[], char valueMemSet, int numOfValue)
{
char temp;
int j=1;
for (int i = 0; i <= numOfValue; i++)
{
temp = destination[i];
destination[i] = valueMemSet;
destination[j] = temp;
j++;
}
}
数组最初是&#34;这是连接的连接源。&#34;
这就是我想要获得的东西&#34; ------这是连接的连接源。&#34;
这就是我目前所获得的内容&#34; -------源连接意味着链接。&#34;
当我运行调试器时,它会保存数组的第一个字母,但是后面的每个字母都会被替换。
我该如何解决这个问题?
答案 0 :(得分:1)
memset()
是一个函数,它在给定的内存中设置一个特定的值,就像你想要将整个数组的元素初始化为某个特定值(例如 - 零)。所以它将在该数组中设置相同。
您需要的是strcat()
功能。
答案 1 :(得分:0)
这就是你需要的吗?
void memSet(char destination[], char valueMemSet, int numOfValue, int len)
{
int j=len-numOfValue;
for (int i = len-1;i>=numOfValue;i--) {
destinstion[i] = destination[j--];
}
for (int i = 0; i < numOfValue; i++)
{
destination[i] = valueMemSet;
}
}