![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 13.04.2012
Сообщений: 12
|
![]()
Вот код:
Код:
|
![]() |
![]() |
![]() |
#2 | |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
![]() Цитата:
а если так? Код:
|
|
![]() |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 13.04.2012
Сообщений: 12
|
![]() Цитата:
а с другой стороны не хотелось бы впустую выделять байты, если они не будут задействованы... Подскажите, в таком варианте нет подвохов: Код:
Последний раз редактировалось demoniqus; 17.04.2012 в 16:45. |
|
![]() |
![]() |
![]() |
#4 | |||
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
![]()
это рабочий вариант!
Цитата:
Цитата:
![]() Цитата:
Код:
|
|||
![]() |
![]() |
![]() |
#5 | ||
Пользователь
Регистрация: 13.04.2012
Сообщений: 12
|
![]() Цитата:
Свой вариант немножко перепишу Код:
char schema_str[(sizeof(sch_str) + sizeof(table_str) + sizeof(col_name_str))] = ""; однако и вариант char schema_str[(sizeof(sch_str) + 5)] = ""; работает, хотя количество символов в трех переменных явно больше... И почему в функции getColNumFromTable печатается sizeof = 8? Цитата:
Последний раз редактировалось demoniqus; 17.04.2012 в 17:08. |
||
![]() |
![]() |
![]() |
#6 | |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
![]() Цитата:
Не совсем. Этот sizeof не мешало бы еще и на количество элементов умножить. В Си это работает, потому что sizeof(char) равен 1 байт, поэтому и sizeof(указатель на строку) вернет длину строки. |
|
![]() |
![]() |
![]() |
#7 | |
Пользователь
Регистрация: 13.04.2012
Сообщений: 12
|
![]()
Вот я это и пытаюсь сделать, да только не понимаю, сколько ж нужно ее выделить...
работает даже так: Код:
Цитата:
Последний раз редактировалось demoniqus; 17.04.2012 в 18:21. |
|
![]() |
![]() |
![]() |
#8 | |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
![]() Цитата:
Да тут что угодно будет. Бред это! Вы так записываете в память, которая может быть занята в любой момент другим процессом (или даже вашим) и тогда все рухнет! |
|
![]() |
![]() |
![]() |
#9 | |
Пользователь
Регистрация: 13.04.2012
Сообщений: 12
|
![]()
Я просто не стал выкладывать все нежизнеспособные попытки, а так я испробовал в частности все варианты result от 0 до 46...
Цитата:
|
|
![]() |
![]() |
![]() |
#10 |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Переполнение | stas45rus | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 11.01.2012 20:54 |
переполнение буфера | goluzov | Общие вопросы C/C++ | 21 | 28.11.2011 09:04 |
Как подменить адрес возврата функции func на адрес функции f используя переполнение буфера buf и функции gets | dmitrii6120 | Помощь студентам | 6 | 14.11.2011 20:10 |
переполнение буфера | Dimarik | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 1 | 13.07.2011 02:24 |
Переполнение стека | Ake | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 30.05.2009 22:39 |