![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() |
sheka |
![]()
Сообщение
#1
|
![]() Я. ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: ![]() ![]() ![]() |
Подскажите, пожалуйста, как из строки удалить слово?
Пока реализовывал, понял из strcat, что char и const char разные типы (почему, что, где еще пока не понял). Решил обойти этот момент через указатели, но здесь меня вообще убило. #include <stdio.h> получаются чудеса: в *n хранится часть строки s. Если не ошибаюсь, вот эта the 1995 model. Следственно закомментированая строка ее очищает. И, самое поразительное, что потом при n=s; в n сохраняется оставшаяся часть строки The; first E36 M3, to be imported to the United States: was. Сможете объяснить такой феномен? ![]() |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата получаются чудеса: в *n хранится часть строки s Во-первых, в *n ничего не хранится. n указывает куда-то. Чувствуешь разницу? Второе: любой компилятор тебя предупредит, что переменная n не инициализирована (а стало быть может указывать куда угодно). Третье - и что тебе показывает тот код, который приведен? Мне оно говорит вот что:The; first E36 M3, to be imported to the United States: was the 1995 model. , попутно пытаясь послать отчет Биллу Гейтсу (при попытке распечатать строку, на которую указывает n). Цитата И, самое поразительное, что потом при n=s; в n сохраняется оставшаяся часть строки Еще раз: в n ничего не сохраняется, кроме указателя на строку. Ты приравнял один указатель другому (а не одну строку другой). То, на что указывала s теперь скопировано и в n (n указывает туда же). И что ты удивляешься? |
sheka |
![]()
Сообщение
#3
|
![]() Я. ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: ![]() ![]() ![]() |
С указателями разобрался, но все таки с char и const char в strcat не могу. Помогите, пожалуйста, закомментированый код на Си перевести. Также хотел бы узнать как стоку "обнулить" (n:='';)
#include <stdio.h> |
![]() ![]() |
![]() |
Текстовая версия | 22.07.2025 13:27 |