Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/293: Рейтинг темы: голосов - 293, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 07.03.2009
Сообщений: 36

Использование функции length

07.03.2009, 17:07. Показов 59898. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
В c++ без проблем использовал функцию length для подсчета длины строки, включив (include) файл <string>.
В C++ builder 6 же, этого сделать не удается, вот что пишет билдер:
C++
1
2
3
4
5
Build
  [C++ Error] string(24): E2209 Unable to open include file 'stl/_prolog.h'
  [C++ Error] string(42): E2209 Unable to open include file 'stl/_string.h'
  [C++ Error] string(50): E2209 Unable to open include file 'stl/_epilog.h'
  [C++ Error] Unit1.cpp(98): E2268 Call to undefined function 'length'
То бишь ругается на невозможность открытия нескольких заголовочных файлов. Пути в Project/Options проставил, вот не знаю, в чем проблема.

А вообще, если есть другое решение для подсчета количества символов в строке типа AnsiString в c++ builder 6, то это бы мне помогло.
Заранее спасибо.

Добавлено через 6 минут 28 секунд
О, сделал так:
int p;
p=ansi_string.Length();
Извиняюсь за беспокойство.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.03.2009, 17:07
Ответы с готовыми решениями:

Доработать функции Length, dreverse
Здравствуйте! Вот есть функция LENGTH: (defun myLength (lst) (if lst (+ 1 (myLength (cdr lst))) 0)) При ее вызове все отлично...

Свойство функции в джава скрипт- length
какое ожидаемое(expected) и фактическое количество(actual) аргументов имеется в виду в примере(скрин прикрепляю) ? так как в скобках...

Объяснить назначение функции length(), принимающей в качестве аргумента std::vector
Добрый день! Подскажите, пожалуйста. Есть такая переменная: vector&lt;float&gt; Yvect C тремя числами: 3 1 0 d=length(Yvect); ...

9
 Аватар для AlexSt
61 / 60 / 9
Регистрация: 13.01.2009
Сообщений: 322
16.03.2009, 05:12
Цитата Сообщение от mrtman Посмотреть сообщение
Здравствуйте.
В c++ без проблем использовал функцию length для подсчета длины строки, включив (include) файл <string>.
В C++ builder 6 же, этого сделать не удается, вот что пишет билдер:
C++
1
2
3
4
5
Build
  [C++ Error] string(24): E2209 Unable to open include file 'stl/_prolog.h'
  [C++ Error] string(42): E2209 Unable to open include file 'stl/_string.h'
  [C++ Error] string(50): E2209 Unable to open include file 'stl/_epilog.h'
  [C++ Error] Unit1.cpp(98): E2268 Call to undefined function 'length'
То бишь ругается на невозможность открытия нескольких заголовочных файлов. Пути в Project/Options проставил, вот не знаю, в чем проблема.

А вообще, если есть другое решение для подсчета количества символов в строке типа AnsiString в c++ builder 6, то это бы мне помогло.
Заранее спасибо.

Добавлено через 6 минут 28 секунд
О, сделал так:
int p;
p=ansi_string.Length();
Извиняюсь за беспокойство.
Лично я всегда использую функцию strlen() для подсчета длинны строки, помойму функция Length(); делфовая, в Сях нет такой функции, может ошибаюсь

int p;
p=strlen(Edit1->Text.c_str());
Button1->Caption=p;
Подсчет длинны строки в эдит
1
1090 / 588 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
16.03.2009, 12:47
ты ошибаешься.
Code
1
Edit1->Text.Length();
0
 Аватар для AlexSt
61 / 60 / 9
Регистрация: 13.01.2009
Сообщений: 322
16.03.2009, 14:37
Цитата Сообщение от AntonChik Посмотреть сообщение
ты ошибаешься.
Code
1
Edit1->Text.Length();
Странно , использую билдер 6 пытаюсь использовать ету функцию, компилятор говорит , незнаю тоакой, какую библиотеку подключить?
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
16.03.2009, 14:42
AlexSt, покажи как ты ее используешь
1
 Аватар для AlexSt
61 / 60 / 9
Регистрация: 13.01.2009
Сообщений: 322
16.03.2009, 15:00
Насколько я вижу, у человека та же проблемма
[C++ Error] Unit1.cpp(98): E2268 Call to undefined function 'length'м

Добавлено через 4 минуты 11 секунд
Опс, и правда работает

Добавлено через 1 минуту 54 секунды
Спс всем за просветление

Добавлено через 5 минут 47 секунд
dstring.h
C++
1
2
3
4
  __DSTRING_INLINE int __fastcall AnsiString::Length() const
  {
    return (Data)? GetRec().length : 0;
  }
0
1 / 1 / 0
Регистрация: 20.01.2011
Сообщений: 7
17.04.2011, 09:52
Из вас, наверное, никто не понимает структуры данных в С++. (да и не только)
AnsiString и т.п. - это такие же классы, как и те которые вы создаете.
Т.е. если вы пишите свой класс, например, СТЕК, то вы пишите так:

Class Stack {
private:
...;
publc:
Stack()
void Clear();
...;
}

И если вам надо создать экземпляр этого класса (объект) и очистить его, то вы пишите так:

MyStack = Stack();
MyStack.Clear();

________________________________________ _____________________________________

А теперь подумайте, если AnsiString такой же класс, то...

AnsiString Str; //создаем пустую строку (конструктор по умолчанию)
AnsiString Str = "blbalba" //создаем строку уже со значением (параметрический конструктор)

У класса AnsiString есть метод : Length() - вернуть длину строки.
Как правильно вызвать метод?
Вот как:
Str.Length() // если объявили AnsiString Str
Str->Lenght() //Если объявили AnsiString *Str



Добавлено через 1 минуту
И если будут проблемы, то напиши в начале модуля
#include "dstring.h"
1
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
18.04.2011, 06:24
Цитата Сообщение от AntonChik Посмотреть сообщение
ты ошибаешься.
Как раз из твоего поста и следует, что он прав: у тебя Lenth() нифига не глобальная функция, а метод строчного класса. Так оно на сях, кстати, и есть, в отличие от делфы, где это функция.
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
18.04.2011, 17:11
к чему весь этот базар, если человек не знает, что в сях надо следить за регистром? не
'length'
а Length()
0
Vilk@
20.05.2011, 12:18
вы используете класс string, описаный в стандартной библиотеке STL,
для которого определён метод string::length(). ansiString -класс Borland'a, и у этого класса
определён метод Length(). Походу он обращается к библиотечному length(), но не может его открыть.Можно попробовать определить вначале пространство имён (using namespace std. Или использовать Length() и следить за регистром
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.05.2011, 12:18
Помогаю со студенческими работами здесь

Запишите с использованием предложения PROG функцию (аналог встроенной функции LENGTH )
Запишите с помощью предложения PROG функцию (аналог встроенной функции LENGTH ), которая возвращает в качестве значения длину списка...

Реализовать функцию, которая выдавала бы элемент списка по заданному номеру с конца (функции length и nth не использовать)
Реализовать функцию, которая выдавала бы элемент списка по заданному номеру с конца (функции length и nth не использовать) помогите...

Функции str.size() и str.length() - в чем их разница?
Существует 2 функции для определения размера строки в string str.size() и str.length() В чем их разница? Почитал, что вроде бы разницы нет...

Delphi, визуальное программирование, функции, использование несколько объектов через функции
Здорово, ребята. Вот когда писал программку, возникла такая мысль - можно ли использовать одну и туже функцию к разным объектам? Вот код...

Возвращение результата функции bool и использование его в функции main()
У меня есть функция bool, которая имеет вид: bool Pisos(int row, int place) { if (...) return true; else return false;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru