Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » указатель на переменную string

Страниц (2): [1] 2 »
 

1. Brumo - 09 Марта, 2021 - 09:40:19 - перейти к сообщению
возможно ли получить указатель на переменную string?

CODE:

string s="abcd";

messagebox (format(address(#s)));// так получим указатель на указатель
2. Kibor - 09 Марта, 2021 - 10:11:14 - перейти к сообщению
Ну получили указатель. Что делать будете с указателем?
3. Brumo - 09 Марта, 2021 - 11:10:53 - перейти к сообщению
 Kibor пишет:
Ну получили указатель. Что делать будете с указателем?

через python изменить значение string Не понял

p.s. чтобы не получать указатель в python, думал может есть возможность сразу в kibore




p.p.s. начинаю думать что это плохая идея)
(Добавление)
 Brumo пишет:
p.p.s. начинаю думать что это плохая идея)

одна из причин, второй день не могу понять как передать нуль-символ в конец строки,с новым значением, как только не пробовал, все равно выводит с мусором после него

с int, char проблем не было, а тут облом..
4. Zireael - 09 Марта, 2021 - 16:32:54 - перейти к сообщению
Что именно хотите сделать со строкой?
Может проще использовать массив char.
5. Brumo - 10 Марта, 2021 - 05:44:10 - перейти к сообщению
Zireael , прямую запись в переменную,
для управления скриптом, без использования pipe, буфера, чтение из файла и т.д. и т.п., на данный момент из python.
не изменяя, не добавляя ничего в сам скрипт, ну максимум, для упрощения кода python: fwrite(address(#s)); - записать указатель в файл, потом считать пайтоном

p.s. повторюсь, с int, char[0] проблем нет, но если в скрипте имеются строки, хотелось бы иметь возможность менять и их, не переписывая скрипт
(Добавление)
в чем загвоздка на данный момент:

CODE:

string s="aaaaaaa";
messagebox (s);
textout(0, 100, 100, s, 1);
pause(5000);//на это этапе записываем в переменную bbb
resettextout(1);
messagebox (s);
textout(0, 100, 100, s, 1);




Отладчик:
 Цитата:

messagebox ( s'aaaaaaa' )
textout ( 0 , 100 , 100 , s'aaaaaaa' , 1 )
pause ( 5000 ) //на это этапе записываем в переменную bbb
resettextout ( 1 )
messagebox ( s'bbb' )
textout ( 0 , 100 , 100 , s'bbb' , 1 )


messagebox выводит новое значение




а вот texout мусор

до изменения

после
6. Kibor - 10 Марта, 2021 - 06:25:12 - перейти к сообщению
 Brumo пишет:
а вот texout мусор

Это не мусор. Это просто часть прошлого изображения.

Ставьте в конце строки в texout много пробелов, что бы затирало.
7. Brumo - 10 Марта, 2021 - 06:27:40 - перейти к сообщению
 Kibor пишет:
Это не мусор. Это просто часть прошлого изображения.



почему тогда, после изменения, если:

string s1;
s1=s;

в s1 также скопируется "bbb aaa"
8. Kibor - 10 Марта, 2021 - 11:34:05 - перейти к сообщению
Код выложите с проблемой.
Запускаемый.
9. Brumo - 10 Марта, 2021 - 11:50:20 - перейти к сообщению
 Kibor пишет:
Код выложите с проблемой.
Запускаемый.

немного тогда доделаю python, а то пока вручную ввожу указатели в python)
10. Brumo - 10 Марта, 2021 - 13:53:57 - перейти к сообщению
test.py (Отобразить)


скрипт kibor (Отобразить)

(Добавление)
пока правил, заметил что messagebox тоже некорректно выводит, затирает кавычки, выводит bbb+4 пробела
(Добавление)
в test.py надо добавить f.close()

 Цитата:



f = open('pointer.txt'Подмигивание
read_pointer = f.read()
f.close()
print('read_pointer: {}'.format(read_pointer))

Powered by ExBB FM 1.0 Final