С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 32, средняя оценка - 4.84
mappy89
2 / 2 / 0
Регистрация: 16.10.2011
Сообщений: 179
#1

Очистить переменную типа char * - C++

19.07.2012, 11:45. Просмотров 5263. Ответов 2
Метки нет (Все метки)

Привет. Тупит код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
char *rt;
int port=4;
 
rt="COM";
char temp1[10]; //временная перем.
 
strcat(rt,itoa(port,temp1,10));
 
if (SetupUart(rt,9600,8,1,NOPARITY))
{Label1->Caption=rt; Button1->Enabled=false;}
 
memset(temp1,0,sizeof(temp1));
 
Label1->Caption=rt;
После пары раз прогона кода вместо "COM4" начинается добавление "4" вконец строки. Как очистить переменную *rt?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.07.2012, 11:45
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Очистить переменную типа char * (C++):

Есть переменная типа char содержащая цифру; как записать это значение в переменную типа int? - C++
Пожалуйста, напомните стандартную функцию

Ввод символов в переменную типа char - C++
Почему после ввода больше 1-го символа выбивает default? #include <iostream> #include <conio.h> #include <math.h> using...

Как сравнить переменную типа char - C++
нужно найти элементы типа char различные от нуля, программу я написал, а вот не получается сравнивать #include <iostream> #include...

Занести число в переменную, типа char - C++
char a; cin>>a; a=3; Тут при чтении с клавы мы считываем символ , т.е. если я введу 3, то а будет равно 3, а при присваивании а =...

Не могу обнулить переменную типа char - C++
Доброго времени суток, помогите обнулить переменную, т.к. мой компилятор ругается "E2277 Lvalue required" char inBuffer; ...

Передать переменную типа char по ссылке - C++
доброго времени суток. помогите над очень простым задание из одной книги. Создайте функцию, которая получает аргумент char& и...

2
talis
792 / 544 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
19.07.2012, 12:08 #2
mappy89, выражение

Цитата Сообщение от mappy89 Посмотреть сообщение
rt="COM";
присваивает rt адрес строки "COM", которая является константой.

Далее

Цитата Сообщение от mappy89 Посмотреть сообщение
strcat(rt,itoa(port,temp1,10));
strcat пишет в эту константу. Так нельзя. Создайте отдельный массив char, причём с тем размером, чтобы туда т очно поместилась ожидаемая результирующая строка, в нём и кувыркайтесь. А константы не трогайте, они вам ничего не сделали :-)

Кроме того, это похоже на билдеровский код. В vcl, если мне не изменяет склероз, есть такая замечательная штука, как IntToString. Поищите в хелпе.
0
Thinker
Эксперт С++
4229 / 2203 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
19.07.2012, 12:14 #3
Цитата Сообщение от mappy89 Посмотреть сообщение
Как очистить переменную *rt?
Вам надо очистить переменную temp1:
C
1
*temp1 = '\0';
А c rt все проще. Пишите rt = "...", каждый раз rt будет иметь адрес соответствующей константы из области памяти read-only
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2012, 12:14
Привет! Вот еще темы с ответами:

Переменную типа char представить в виде 8 битов - C++
У меня есть символ a. char x = 'a'; = 1 байту. Тоесть 8 битам. Как мне получить символ a в битовом представлению? Тоесть a=....

НЕ записывается содержимое файла в переменную типа char - C++
Нужно открыть файл, сохранить содержимое текста файла в переменную типа char под названием buffer и вывести переменную buffer на экран. При...

Вывести с помощью printf переменную типа char* - C++
Добрый день! Подскажите: есть переменная "message" типа char* Если пишу: printf("\n%*d %c ", offset--, (char*)message, i ? '+' :...

Как вернуть переменную типа char * из функции - C++
Как вернуть переменную типа char * из функции в которую передаю string??? Вот моя функция: char * function ( string line ) { ...


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

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

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