C 用于删除字符串指针的退格的函数
我需要编写一个函数来删除退格并移动所有后续字符。这就是我目前所拥有的C 用于删除字符串指针的退格的函数,c,arrays,string,pointers,C,Arrays,String,Pointers,我需要编写一个函数来删除退格并移动所有后续字符。这就是我目前所拥有的 int ProcessBackspaces(char *rpn_sentence) { int i=0; char *array [MAX]; char *b_token; b_token = strtok(rpn_sentence, "\b"); while (b_token!=NULL){ array[i]=b_toke
int ProcessBackspaces(char *rpn_sentence)
{
int i=0;
char *array [MAX];
char *b_token;
b_token = strtok(rpn_sentence, "\b");
while (b_token!=NULL){
array[i]=b_token;
i++;
}
}
我一直在研究如何使传入指针(char*rpn_语句)指向指针数组的每个元素
如何使传入指针(char*rpn_语句)指向指针数组的每个元素
只需增加指针(或其副本)
还要考虑字符串可能有0个退格(请快速)或多个退格(仅复制字符一次)
如何使传入指针(char*rpn_语句)指向指针数组的每个元素
只需增加指针(或其副本)
还要考虑字符串可能有0个退格(请快速)或多个退格(仅复制字符一次)
char *ProcessBackspaces(char *rpn_sentence) {
char *src = strchr(rpn, '\b'); // Find first quickly
if (src) {
char *dest = src;
src++;
while (*src) {
if (*src != '\b') {
*dest++ = *src; // Save non-backspaces, increment destination
}
src++; // Increment source
}
*dest = '\0';
}
return rpn; // Perhaps return start of string
}