![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
![]()
Люди добрые, помогите!
Я уже целый вечер воюю со строками, а тут - проблема детская, но я что-то не могу ее решить. пользователь вводит год (как строку), а мне нужны лишь 2 последние цифры.... Я перелопатила уже половину Интернета, и везде все так загадочно написано, а я что не делаю, все не работает..... вот что есть (фрагмент кода) Код:
помогите написать..и как-нибудь попроще, для начинающих))) И скажите, а почему он так странно реагирует на размерность символьного массива: вроде в годе 4 цифры, а ему почему-то year[4] очень не нравиться. Я ввожу год из четырех цифр, а он сразу выдает ошибку, мол, буфер слишком мал.......не хватает ему массива в 4 символа, чтобы записать 4 цифры. Если я пишу, скажем, year[10] очень хорошо все кушает.
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
|
![]() |
![]() |
![]() |
#2 |
Delphi Warrior
Старожил
Регистрация: 15.08.2008
Сообщений: 2,502
|
![]()
так попробуйте!
Код:
Mess with the best, die like the rest.
![]() Лабораторные, курсовые на Delphi\Pascal\C++ ya.flex-freelance@yandex.ru Icq - 636-954-303 |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 01.12.2008
Сообщений: 58
|
![]()
Массив для строки должен быть на один символ больше, чем сама строка, так как последним символом нужно помещать (если используемые функции не делают это самостоятельно) символ '\0'. Он означает конец строки.
Пример: Была строка "Строка". В массиве она запишется так: "Строка\0" |
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
![]()
Так-то оно так, но по условию задания мы должны использовать функции, работающие со строками.... вот я и сижу, думаю.... Смотрю на карту строковых функций и идей никаких((((
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
|
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
![]()
Я поняла...а то я дико удивлялась, почему меня все выбрасывает из программы, если дата в два числа....
Может и строковую функцию подскажите, для того, чтобы 2 последних цифры года вырезать... Глупо было бы просить пользователя ввести год в формате 19-98 и оттуда через "раскол" по дефису доставать..... Кстати, я для Visual C++ 2008 пишу...для другого компилятора мне не надо, а то еще больше запутаюсь((((((
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
Последний раз редактировалось Blondy; 05.03.2011 в 14:01. |
![]() |
![]() |
![]() |
#6 |
Участник клуба
Регистрация: 23.12.2010
Сообщений: 1,129
|
![]()
Раз уж речь идет о c++,
#include <iostream> #include <string> using namespace std; void main() { string s1, s2; cout<<"Enter year as 4 digits: "; cin>>s1; s2=s1.substr(s1.size()-2, 2); cout<<s2; } |
![]() |
![]() |
![]() |
#7 |
Участник клуба
Регистрация: 07.07.2009
Сообщений: 1,385
|
![]()
Спасибо)))
Сейчас попробуем)))) Только адаптируем под условия... что-то вроде year2=year.substr(year.size()-2,2) не работает... говорит, что если мы используем .substr, слева от точки должны быть классы, объекты или структуры... мы еще ничего из этого не проходили, зачит substr нам не подходит вообще..... Какую функцию для работы со строками можно еще для вырезки использовать?
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan
Последний раз редактировалось Blondy; 05.03.2011 в 15:39. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вырезать часть строки. | sergeyrulit | Общие вопросы Delphi | 2 | 22.10.2010 22:25 |
вырезать из строки нужные числа | fize | Помощь студентам | 1 | 16.12.2009 18:25 |
Вырезать из строки string слово | sasha1993 | Общие вопросы Delphi | 3 | 24.07.2009 22:11 |
Перенести символа с начала строки в место перед запятой этой же строки. | Zhiltsov | Microsoft Office Excel | 4 | 05.06.2009 13:10 |
Как из строки получить первые три символа | experts91 | Помощь студентам | 2 | 07.04.2008 21:58 |