У меня есть строка «Веселого Рождества». Я хочу разделить это как «Веселое» и «Рождество». В Objective c я мог бы сделать это легко на componentsSeparatedByString:
. Как это сделать в C?Возьмите подстроку из строки в C
1
A
ответ
0
Вы можете использовать strtok разбить строку на C.
1
пытаются найти strtok()
1
Стандартный путь в чистом C является использование strtok
, хотя это довольно опасно и разрушительно функция (он изменяет переданный в символьном буфере).
C++, есть лучшие способы; см. здесь: How do I tokenize a string in C++?
1
Вы должны написать свою собственную функцию. В библиотеке C есть strtok(), strspn() and strcspn()
, и то, что вы называете String, представляет собой массив символов (который заканчивается на \0
).
0
1
strtok - это общее решение для токенизации строк. Более простой и ограниченный способ заключается в использовании strchr:
#include <string.h> // strchr, strcpy
#include <stddef.h> // NULL
const char str[] = "Merry Christmas";
const char* ptr_merry = str;
const char* ptr_christmas;
ptr_christmas = strchr(str, ' ');
if(ptr_christmas != NULL)
{
ptr_christmas++; // point to the first character after the space
}
// optionally, make hard copies of the strings, if you want to alter them:
char hardcpy_merry[N];
char hardcpy_christmas[n];
strcpy(hardcpy_merry, ptr_merry);
strcpy(hardcpy_christmas, ptr_christmas);
Смежные вопросы
- 1. получить подстроку из строки C в C++
- 2. Как получить подстроку из строки в C#?
- 3. Как извлечь подстроку из строки в C++?
- 4. Как удалить подстроку из строки в C++
- 5. Выберите подстроку из строки в C#
- 6. сохранить подстроку из строки в Objective-C
- 7. Как вырезать подстроку из строки в c
- 8. Как извлечь подстроку из строки в C?
- 9. получить подстроку из строки в C
- 10. C# взять подстроку строки
- 11. Извлечь подстроку из строки
- 12. Возьмите подстроки из строки
- 13. Найти подстроку строки в C#
- 14. Удалить динамическую подстроку из строки C#
- 15. подстроку из строки варианта
- 16. Заменить подстроку из строки
- 17. Обратное подстроку из строки
- 18. Удалить подстроку из строки
- 19. Получить подстроку из строки
- 20. Заменить подстроку из строки
- 21. Получить подстроку из строки
- 22. Удалить подстроку из строки
- 23. Принимая подстроку из строки
- 24. Возьмите (n) символы из строки
- 25. Невозможно собрать подстроку из строки
- 26. Возьмите многочисленные части строки из длинной строки
- 27. Возьмите файл в качестве ввода из командной строки C++
- 28. Как извлечь подстроку из строки в Python?
- 29. Возьмите из последней строки в vimrc
- 30. Невозможно извлечь подстроку из строки
-1 для рекомендации нестандартных функций. – Lundin