Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
Van111
кодер с++
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
#1

Помогите написать очень маленькую ассемблерную вставку - C++

14.10.2011, 10:39. Просмотров 1714. Ответов 32
Метки нет (Все метки)

я слышал что по новым стандартам вот такая конструкция не работает
int n;
cin >> n;
int m[n]
пишет размер статистического масива должен быть константой )))))
а вот если
const int n=1;
и тут нужна асемблерная вставка которая может поменять n
int m[n]

буду искрене благодарен если поможете
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2011, 10:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Помогите написать очень маленькую ассемблерную вставку (C++):

Не могу запустить ассемблерную вставку на c++ - C++
Вставка находит скалярное произведение двух векторов, помогите запустить __asm { movaps xmm0, xmmword ptr // 0 | A.z |...

Как сделать ассемблерную вставку? - C++
Нужно сложить два числа. Не могу понять ошибки вроде примеры смотрел вставки делаются именно так #include <iostream> #include <stdio.h>...

Как сделать ассемблерную вставку на с++? - C++
Вроде бы ничего нет сложного, код очень простой, и много где есть, но не идет код У меня c++ BorlandC 3.0, ассемблер MASM использую. Взял...

Нужно переделать С++ функцию на ассемблерную вставку - C++
Вот у меня имеется функция,осуществляющая реверс строки на С++ void reverse(const char *s) { if (s && *s) { int l; for (l =...

Сделать из assembler кода ассемблерную вставку в C++ - C++
У меня есть код в ассемблере, мне надо его сделать ассемблерной вставкой, чтоб он работал вот код include \masm32\include\masm32rt.inc...

пишу программу на С++, и делаю в ней ассемблеровскую вставку. Возможно ли в этой _asm вставке сделать С++ вставку? - C++
Я пишу программу на С++, и делаю в ней ассемблеровскую вставку. Возможно ли в этой _asm вставке сделать С++ вставку? Если да, то как?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
mimicria
return (true);
1957 / 1094 / 91
Регистрация: 19.04.2011
Сообщений: 2,345
14.10.2011, 10:41 #2
Зачем, если есть динамический массив?
C++
1
2
3
int n;
cin >> n;
int *m = new int[n];
0
Dani
1393 / 637 / 57
Регистрация: 11.08.2011
Сообщений: 2,282
Записей в блоге: 2
Завершенные тесты: 1
14.10.2011, 10:42 #3
есть такая штука, которую нужно применять ТОЛЬКО в самых крайних случаях.
const_cast называется, она снимает const с переменной.
она используется тогда, когда нельзя обойти ситуацию другими путями
1
Van111
кодер с++
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
14.10.2011, 10:47  [ТС] #4
mimicria, да просто там кое какие умники меня на форуме запресовали что должен быть констанктой размер масива а на моём компиляторе это не обезательно
0
Nameless One
Эксперт С++
5773 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
14.10.2011, 10:49 #5
Цитата Сообщение от Van111 Посмотреть сообщение
и тут нужна асемблерная вставка которая может поменять n
и ты что, правда думаешь, что это позволит тебе изменить размер массива? Он как был массивом одного элемента, так им и останется. И любые попытки получить доступ к любому элементу массива, кроме первого, приведут к UB.

Используй динамические массивы, Люк
1
Van111
кодер с++
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
14.10.2011, 10:50  [ТС] #6
кстати я если
int n[5]={0,1,2,3,4,5}
int *n=new int[10] - первые 6 значений помоему же не уничтожатся?
0
Nameless One
Эксперт С++
5773 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
14.10.2011, 10:50 #7
Цитата Сообщение от Van111 Посмотреть сообщение
mimicria, да просто там кое какие умники меня на форуме запресовали что должен быть констанктой размер масива а на моём компиляторе это не обезательно
это так и есть, а то, что у тебя оно работает - это не более, чем счастливая случайность. А я бы на твоем месте научился бы слушать, что говорят умные люди, а не пороть чушь.
0
Nameless One
Эксперт С++
5773 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
14.10.2011, 10:51 #8
Цитата Сообщение от Van111 Посмотреть сообщение
C++
1
2
int n[5]={0,1,2,3,4,5}
int *n=new int[10] - первые 6 значений помоему же не уничтожатся?
нет, ты тут получишь всего-лишь ошибку компиляции
0
Van111
кодер с++
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
14.10.2011, 10:52  [ТС] #9
Цитата Сообщение от Nameless One Посмотреть сообщение
Люк
что это значит
мне просто хочется доказать что компилятор можно обойти
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
14.10.2011, 10:53 #10
Цитата Сообщение от Van111 Посмотреть сообщение
да просто там кое какие умники меня на форуме запресовали что должен быть констанктой размер масива а на моём компиляторе это не обезательно
чувствуешь разницу
C++
1
2
3
int n;
cin >> n;
int *m = new int[n];
и
C++
1
2
3
int n;
cin >> n;
int m[n];
?
0
alkagolik
Заблокирован
14.10.2011, 10:54 #11
Цитата Сообщение от Van111 Посмотреть сообщение
мне просто хочется доказать что компилятор можно обойти
доказывай... кодами
0
Nameless One
Эксперт С++
5773 / 3424 / 255
Регистрация: 08.02.2010
Сообщений: 7,447
14.10.2011, 10:54 #12
Цитата Сообщение от Van111 Посмотреть сообщение
мне просто хочется доказать что компилятор можно обойти
ты просто не понимаешь принципа выделения памяти в С/С++
1
Van111
кодер с++
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
14.10.2011, 10:58  [ТС] #13
Nameless One,
а как увеличить размер уже созданого массива?
0
Dani
1393 / 637 / 57
Регистрация: 11.08.2011
Сообщений: 2,282
Записей в блоге: 2
Завершенные тесты: 1
14.10.2011, 10:59 #14
на это есть vector
0
Van111
кодер с++
209 / 188 / 4
Регистрация: 03.08.2011
Сообщений: 2,597
Записей в блоге: 12
14.10.2011, 11:01  [ТС] #15
кто может сделать ассемблерную вставку которая может изменить значений константы?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.10.2011, 11:01
Привет! Вот еще темы с ответами:

Написать функцию, которая переводит введенную пользователем маленькую букву в большую - C++
Ребят помогите пожалуйста написать функцию, которая переводит введенную пользователем маленькую букву в большую, надо сделать для...

помогите пожалуйста, очень СРОЧНО - C++
1. Дана последовательность из 100 целых чисел. Определить количество чисел в наиболее длинной подпоследовательности из подряд идущих...

Помогите развязать задачу очень нужно на С++ - C++
Задан массив чисел. Если есть элемент равен а, то результат равен сумме элементов, которые идут после а, в противном случае результатом...

Написать код программы, выполняющей растяжку списка и вставку, удаление из списка и сжатие списка - C++
Люди ПОМОГИТЕ осталось совсем мало , мне нужна помощь!!! написать код программ: 1) Написать код программы, выполняющей растяжку...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
14.10.2011, 11:01
Ответ Создать тему
Опции темы

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