Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++ Builder
Войти
Регистрация
Восстановить пароль
 
SergeyS
153 / 145 / 20
Регистрация: 12.03.2011
Сообщений: 807
1

Совсем непонятен принцип ошибки[файлы]

19.03.2011, 15:21. Просмотров 462. Ответов 4
Метки нет (Все метки)

Имеется на форме два Edit'a и одна кнопка. соответственно edit1 , edit2 , button .

Имеется обработчик нажатия кнопки:

C++
1
2
3
4
5
6
7
8
9
10
void __fastcall TForm1::Button1Click(TObject *Sender)
{
FILE *admins;
char *steamid = (char *)Edit1->Text.data();
char *prava = (char *)Edit2->Text.data();
 
admins = fopen("admins_simple.ini","w");
fprintf(admins,"\"%s\" \"%s\"",steamid,prava);
fclose(admins);
}
Если я ввожу и в edit1 и во второй, то после запуска программы и нажатия кнопки происходит следующие: создается файл: "" "" . после второго нажатия кнопки, не закрывая программу: "bbb" "bbb"


bbb- значение edit2->Text . Т.е первый едит вообще не выводится.
Если заполнить первый едит, и оставить пустым второй то вот такая штука: после первого нажатия на кнопку: "" ""
после второго: "AA" "(null)"
где AA - значение первого едита.

в последнем случае выводит хоть верно(первый едит и пустой второй )

я сильно запутался, прошу помощи
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.03.2011, 15:21
Ответы с готовыми решениями:

совсем запутался..
Ребята, помогите пожалуйста. Я совсем запутался в вычислениях.. #include...

Совсем тупой вопрос : как написать функцию?
Совсем недавно поставил Builder, и у меня возник вопрос : как создать...

Непонятен принцип работы программы
#include <stdio.h> main(){ double character; character = 0;...

Popen принцип работы непонятен
Пишу вот так pc= Popen('start cmd /K' + zapros, shell=True) потом...

Динамическая клавиатура.Непонятен принцип действия диода .
Здравствуйте , на днях стал изучать принцип работы "Динамической клавиатуры" и...

4
Grey
Тутошний я
1612 / 799 / 134
Регистрация: 03.11.2009
Сообщений: 2,333
Записей в блоге: 1
19.03.2011, 18:45 2
А почему таким образом записываешь, а не классом TIniFile?

Добавлено через 3 минуты
C++
1
2
3
4
5
6
7
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TIniFile *ini=new TIniFile("admins_simple.ini");
 ini->WriteString("Edits","steamid",Edit1->Text);
 ini->WriteString("Edits","prava",Edit2->Text);
delete ini;
ini=NULL;
0
SergeyS
153 / 145 / 20
Регистрация: 12.03.2011
Сообщений: 807
19.03.2011, 21:16  [ТС] 3
потому что я обьекто - ориентированого способа программирования пока незнаю.
0
Day
1159 / 964 / 83
Регистрация: 29.10.2009
Сообщений: 1,385
20.03.2011, 11:07 4
bober94, видимо, метод data() дает указатель на строку char * "на секундочку". Его нужно тут же использовать. Например
C++
1
2
  char prava[100];
  strcpy(prava, Edit2->Text.data());
Я этого метода (data()) не нашел но метод c_str() такой особенностью обладает
1
SergeyS
153 / 145 / 20
Регистрация: 12.03.2011
Сообщений: 807
20.03.2011, 13:14  [ТС] 5
Спасибо, получилось. Только я метод data() заменило c_str()
Так как data вроде возвращает не строку
0
20.03.2011, 13:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.03.2011, 13:14

Непонятен принцип работы алгоритма Брезенхэма для растровой развёртки окружности
Вот пример с википедии,непонятны следующие моменты(а конкретно на чём основан...

Возникли совсем не понятные мне ошибки в программе
В Code::Blocks написал в принципе простенькую программу, но во время исполнения...

Делаю лабораторную работу, написал код программы, принцип думаю верен, а вот с синтаксисом проблемы. Помогите исправить ошибки
делаю лабораторную, написал код программы (принцип думаю верен, а вот с...


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

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

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