Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.59/111: Рейтинг темы: голосов - 111, средняя оценка - 4.59
AceMarR
0 / 0 / 0
Регистрация: 11.09.2010
Сообщений: 21
1

Int в AnsiString/String

11.09.2010, 16:51. Просмотров 21075. Ответов 7
Метки нет (Все метки)

Доброго времени суток. Не мог бы кто-нибудь дать совет, как можно преобразовать Int в AnsiString/String?

Задача конкретно состоит в следующем: нужно создать строковую переменную вида "Region like (число)", где число - это переменная Int, считываемая, допустим, из Edit'a.

Пробовал конструкции типа
C++
1
Str="Region like "+("%d",a);
Компилятор пропускает, но цифры в конце строки не оказывается. Собственно компилятор Borland V6.

Заранее благодарю...
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.09.2010, 16:51
Ответы с готовыми решениями:

AnsiString -> int
Мне надо из текстового поля вытащить числовое значение. У поля тип AnsiString а мне надо получить...

AnsiString to Int в журнале
Доброго, господа. Если тему переведут куда-то - ладно. Тема, в общем-то, такова - программа,...

Невозможно преобразовать AnsiString в int
Для той что в танке,помогите исправить ошибку в 5й строке,пишет что-то в роде того,что нельзя...

Не работает преобразование AnsiString в int
в компоненте Editя получаю строку ,например "9987". мне ее нужно перевести в инт. пробовал: ...

Ansistring -> string
Собственно, проблема в том, что мне нужно использовать сишную строку, но в Edit->Text она хранится...

7
Kastaneda
Jesus loves me
Эксперт С++
5058 / 3076 / 351
Регистрация: 12.12.2009
Сообщений: 7,778
Записей в блоге: 2
Завершенные тесты: 1
11.09.2010, 17:13 2
Я даже подозреваю, что в конце строки оказывается какой-то "не понятный" символ) Нужно взять каждую цифру числа и добавить к ней код символа '0', а полученное прибавить к строке.

Добавлено через 1 минуту
по-моему есть готовая функция, которая это делает, сейчас справочник порою)

Добавлено через 14 минут
В справочнике не нашел, т.к. это вроде как не стандртная ф-ция, но гугл знает все)
Функция Преобразует целое значение в строку символов.

Синтаксис #include<stdlib.h>
char *itoa(int value, char * string, int radix);

Файл, содержащий stdlib.h
прототип

Описание Эта функция преобразует значение value в строку
символов, оканчивающуюся нулем, и записывают
результат в параметр string. Для функции itoa
значение value - целое.

Параметр radix определяет базис, который будет
использован при преобразовании значения value; он
должен лежать между 2 и 36 (включительно). Eсли
значение value отрицательно, и значение radix 10,
первый символ строки string - знак минус (-).

Примечание: Пространство, выделяемое для параметра
string должно быть достаточным, чтобы записать
полученную в результате работы функции строку,
включая нулевой байт (\0). Функция itoa может
возвращать до 17 байт.

Возвращаемое Функция возвращает указатель на строку string,
значение причем завершения по ошибке не существует.

Переносимость itoa уникальна для DOS.

Смотри также itoa, ultoa

Пример:

#include<stdlib.h>
#include<stdio.h>

int main(void)
{
int number = 12345;
char string[25];
itoa(number,string,10);
printf("Целое: %d, строка: %s\n",number,string);
return 0;
}
1
dihlofos
Бродяга
309 / 263 / 56
Регистрация: 27.08.2010
Сообщений: 553
11.09.2010, 17:52 3
А что, IntToStr(a) не работает?
1
NiTan
Покинул форум
3172 / 1357 / 109
Регистрация: 29.01.2010
Сообщений: 2,887
11.09.2010, 18:54 4
Лучший ответ Сообщение было отмечено как решение

Решение

Kastaneda, AceMarR,
C++
1
2
3
4
int a=128;
String str;
str="Region like (" +IntToStr(a) + ")";
ShowMessage(str)
Добавлено через 1 минуту

Не по теме:

Цитата Сообщение от dihlofos Посмотреть сообщение
А что, IntToStr(a) не работает?
Больше, видимо, не в моде.:D

3
11.09.2010, 18:54
ProstoMad
49 / 39 / 5
Регистрация: 30.06.2010
Сообщений: 1,191
11.09.2010, 21:51 5
А если просто String(a)? работать не будет?
0
NiTan
Покинул форум
3172 / 1357 / 109
Регистрация: 29.01.2010
Сообщений: 2,887
11.09.2010, 22:00 6
ProstoMad, будет, конечно. Методы почти одинаковы.
0
AceMarR
0 / 0 / 0
Регистрация: 11.09.2010
Сообщений: 21
12.09.2010, 07:08  [ТС] 7
Всем спасибо, IntToStr работает, действительно) Видимо, просто больше спать надо =)
0
ProstoMad
49 / 39 / 5
Регистрация: 30.06.2010
Сообщений: 1,191
13.09.2010, 11:10 8
А зачем тогда нужен IntToStr есть String есть?
0
13.09.2010, 11:10
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.09.2010, 11:10

[C++ Error] Unit1.cpp(50): E2034 Cannot convert 'AnsiString' to 'int'
помогите пожалуйста void __fastcall TForm1::J() { int m=StringGrid2-&gt;Cells.d]; int...

как преобразовать AnsiString в string
столкнулся с такой проблемой, у меня есть код функции написанный на с, в нем используется тип...

[C++ Error] Cannot convert 'string' to 'AnsiString'
Ошибка: Unit1.cpp(79): E2034 Cannot convert 'string' to 'AnsiString' Строки: string WorkInfo; ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.