С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/25: Рейтинг темы: голосов - 25, средняя оценка - 4.76
0 / 0 / 0
Регистрация: 02.02.2017
Сообщений: 18
1

Преобразование числа в строку

09.07.2017, 18:42. Показов 4629. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет.
Имеется следующая функция

C++
1
2
3
4
5
6
7
8
void LiquidCrystal_I2C_PrintString(char *str){
    uint8_t i=0;
    while(str[i]) {
        LiquidCrystal_I2C_AddByte(str[i], Rs);
        i++;
    }
    LiquidCrystal_I2C_Write();
}
Как преобразовать данную функцию чтобы при ее вызове в качестве переменной нужно было записывать не "значение" а массив со значением?
Т.е например вместо
C++
1
LiquidCrystal_I2C_PrintString("6000"),
вот так
C++
1
2
buf[0]={6000};
LiquidCrystal_I2C_PrintString(buf[0]);
0
Лучшие ответы (1)
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Блог
09.07.2017, 18:42
Ответы с готовыми решениями:

Преобразование числа в строку!!!!
Как в VS преобразовать число в строку!!! Через itoa что-то не выходит!!!

Преобразование числа в строку
Как преобразовать строку char *s, в которой записано число(возможно со знаком минус), в формат типа...

Преобразование числа в строку
Всем доброго времени суток, помогите пожалуйста получить из числа 12345679 (int), строку string =...

Преобразование числа в строку
Подскажите как преобразовать число в строку, пожалуйста!

15
68 / 51 / 27
Регистрация: 27.04.2015
Сообщений: 203
09.07.2017, 20:20 2
Еще раз, пожалуйста, только теперь нормально объясните. Может быть, вам даже помогут. Может быть, даже я.

PS Что делает функция - можно лишь догадываться, ведь в ней также вызываются пользовательские функции.
0
Фрилансер
761 / 458 / 146
Регистрация: 06.01.2017
Сообщений: 4,856
09.07.2017, 20:48 3
Цитата Сообщение от Sirajud Посмотреть сообщение
Как преобразовать данную функцию чтобы при ее вызове в качестве переменной нужно было записывать не "значение" а массив со значением?
ничего не понял))
0
Эксперт С++
8972 / 4318 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
09.07.2017, 22:42 4
C++
1
2
const char* buf = "6000";
LiquidCrystal_I2C_PrintString(buf);
Добавлено через 15 секунд
C++
1
2
const char* buf = "6000";
LiquidCrystal_I2C_PrintString(buf);
0
0 / 0 / 0
Регистрация: 02.02.2017
Сообщений: 18
09.07.2017, 22:59  [ТС] 5
Цитата Сообщение от hoggy Посмотреть сообщение
C++
1
2
const char* buf = "6000";
LiquidCrystal_I2C_PrintString(buf);
Добавлено через 15 секунд
C++
1
2
const char* buf = "6000";
LiquidCrystal_I2C_PrintString(buf);
А если значение в массиве периодически меняются?
0
Эксперт С++
8972 / 4318 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
09.07.2017, 23:00 6
Цитата Сообщение от Sirajud Посмотреть сообщение
А если значение в массиве периодически меняются?
C++
1
2
char buf[100500] = "6000";
LiquidCrystal_I2C_PrintString(buf);
0
0 / 0 / 0
Регистрация: 02.02.2017
Сообщений: 18
09.07.2017, 23:12  [ТС] 7
Цитата Сообщение от hoggy Посмотреть сообщение
C++
1
2
char buf[100500] = "6000";
LiquidCrystal_I2C_PrintString(buf);
Т.е значение элемента массива buf[0] меняется
0
Эксперт С++
8972 / 4318 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
09.07.2017, 23:18 8
Цитата Сообщение от Sirajud Посмотреть сообщение
Т.е значение элемента массива buf[0] меняется
C++
1
2
3
4
char buf[100500] = "6000";
LiquidCrystal_I2C_PrintString(buf);
buf[0] = buf[0] + 1;
LiquidCrystal_I2C_PrintString(buf);
0
0 / 0 / 0
Регистрация: 02.02.2017
Сообщений: 18
10.07.2017, 00:35  [ТС] 9
Так значение элемента массива buf[0] неизвестно, оно меняется. Т.е элемент массива buf[0] это некоторое число которое неизвестно заранее.

Добавлено через 14 минут
buf[0]={ неизвестное число};
LiquidCrystal_I2C_PrintString( неизвестное число);

Добавлено через 9 минут
uint16_t buf[0]
0
Эксперт С++
8972 / 4318 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
10.07.2017, 01:34 10
Цитата Сообщение от Sirajud Посмотреть сообщение
Так значение элемента массива buf[0] неизвестно, оно меняется. Т.е элемент массива buf[0] это некоторое число которое неизвестно заранее.
C++
1
2
3
4
char buf[100500] = getUnknownValue(); 
LiquidCrystal_I2C_PrintString(buf);
buf[0] = buf[0] + 1; // <--- change unknown value
LiquidCrystal_I2C_PrintString(buf);
0
0 / 0 / 0
Регистрация: 02.02.2017
Сообщений: 18
10.07.2017, 08:56  [ТС] 11
Цитата Сообщение от hoggy Посмотреть сообщение
C++
1
2
3
4
char buf[100500] = getUnknownValue(); 
LiquidCrystal_I2C_PrintString(buf);
buf[0] = buf[0] + 1; // <--- change unknown value
LiquidCrystal_I2C_PrintString(buf);
passing argument 1 of 'LiquidCrystal_I2C_PrintString' makes pointer from integer without a cast [-Wint-conversion] main.c /mic/Src line 105 C/C++ Problem
0
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
10.07.2017, 09:36 12
Sirajud,
C++
1
2
3
4
5
6
void PrintInt(int value)
{
    char buf[10];
    sprintf(buf, "%i", value);
    LiquidCrystal_I2C_PrintString(buf);
}
0
Эксперт С++
8972 / 4318 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
10.07.2017, 11:52 13
Цитата Сообщение от Sirajud Посмотреть сообщение
passing argument 1 of 'LiquidCrystal_I2C_PrintString' makes pointer from integer without a cast [-Wint-conversion] main.c /mic/Src line 105 C/C++ Problem
вы там какую то фигню прогоняете.
и эта фигня не соответствует сабжу данной темы.
либо приводите реальный код,
либо ждите телепатов.

Добавлено через 15 секунд
Цитата Сообщение от Sirajud Посмотреть сообщение
passing argument 1 of 'LiquidCrystal_I2C_PrintString' makes pointer from integer without a cast [-Wint-conversion] main.c /mic/Src line 105 C/C++ Problem
вы там какую то фигню прогоняете.
и эта фигня не соответствует сабжу данной темы.
либо приводите реальный код,
либо ждите телепатов.
0
0 / 0 / 0
Регистрация: 02.02.2017
Сообщений: 18
10.07.2017, 14:31  [ТС] 14
Цитата Сообщение от hoggy Посмотреть сообщение
вы там какую то фигню прогоняете.
и эта фигня не соответствует сабжу данной темы.
либо приводите реальный код,
либо ждите телепатов.

Добавлено через 15 секунд


вы там какую то фигню прогоняете.
и эта фигня не соответствует сабжу данной темы.
либо приводите реальный код,
либо ждите телепатов.
Я прогоняю вашу "фигню"
0
874 / 535 / 175
Регистрация: 30.07.2015
Сообщений: 1,739
10.07.2017, 14:36 15
Лучший ответ Сообщение было отмечено Sirajud как решение

Решение

Sirajud, если тебе надо инт разложить в строку воспользуйся sprintf как я выше написал
1
0 / 0 / 0
Регистрация: 02.02.2017
Сообщений: 18
10.07.2017, 14:41  [ТС] 16
Спасибо за пример, разобрался.
0
10.07.2017, 14:41
BasicMan
Эксперт
19315 / 2622 / 84
Регистрация: 17.02.2009
Сообщений: 10,364
Блог
10.07.2017, 14:41
Помогаю со студенческими работами здесь

Преобразование целого числа в строку
Написать функцию, которая выполняет преобразование целого числа в строку. Проиллюстрировать работу...

Преобразование сверхбольшого двоичного числа в строку-десятичное_число.
Пишу класс для хранение и операций над числами большой размерности. Перепробовал несколько...

Преобразование числа в строку
Здравствуйте! Кто может мне помочь? У меня нет времени изобретать велосипед. Может у...

Преобразование числа в строку
Помогите с написанием программы: Дано описание: N DW ? ; 0⩽N⩽9999 S DB 4 DUP(?)...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru