2016-09-19 4 views
-1

Нужно проверить переменную для удаления. Как?C++ удалить цитату из char type

char test[] = "\"C:\\hello\""; 

if(test[0] = '"') 
{ 
// test variable 0 index to blank 
} 
+2

Вы можете использовать 'std :: string', который имеет удобные функции-члены для этого типа операции. – NathanOliver

+1

Btw, test - это массив, а не одна переменная –

+2

'test [0] = '';' – evan

ответ

1

Поскольку вы находитесь в Windows, вызовите функцию PathUnquoteSpaces в Windows API.

PathUnquoteSpaces(test); 
0

Чтобы удалить символ в массиве символов, вам потребуется перезаписать слот оставшимся текстом.

Оригинал:

+---+---+---+----+ 
| " | C | : | \0 | 
+---+---+---+----+ 
     | 
    +---+ Copy from original. 
    | 
    V 
+---+---+----+----+ 
| C | : | \0 | \0 | 
+---+---+----+----+ 

См memmove для копирования, когда направления совпадают.

Простым решением является использование std::string для всех ваших многосимвольных текстов и их методов.

Смежные вопросы