Вопросы по теме 'undefined-behavior'
Знаковый сдвиг вправо = странный результат?
Я помогал кому-то с домашним заданием и столкнулся с этой странной проблемой. Проблема состоит в том, чтобы написать функцию, которая меняет порядок байтов целого числа со знаком (в любом случае, именно так функция была указана), и это решение,...
3831 просмотров
schedule
31.12.2023
Неопределенное поведение с не виртуальными деструкторами — это реальная проблема?
Рассмотрим следующий код:
class A
{
public:
A() {}
~A() {}
};
class B: public A
{
B() {}
~B() {}
};
A* b = new B;
delete b; // undefined behaviour
Насколько я понимаю, в стандарте C++ говорится, что удаление b является...
578 просмотров
schedule
24.11.2023
Объединение с константой и неконстантным членом?
Это похоже на неопределенное поведение
union A {
int const x;
float y;
};
A a = { 0 };
a.y = 1;
В спецификации говорится
Создание нового объекта в том месте хранения, которое занимает константный объект со статической, потоковой...
2711 просмотров
schedule
11.11.2023
Временное и экспрессивное поведение
Является ли это четко определенным поведением?
const char* p = (std::string("Hello") + std::string("World")).c_str();
std::cout << p;
Я не уверена. Причины?
237 просмотров
schedule
15.09.2022
C/C++: это неопределенное поведение? (двумерные массивы)
Это неопределенное поведение, если я просматриваю элементы 2D-массива следующим образом?
int v[5][5], i;
for (i = 0; i < 5*5; ++i) {
v[i] = i;
}
Опять же, он вообще компилируется? (Сейчас не могу попробовать, я не дома.) Если нет,...
1071 просмотров
schedule
03.10.2023
Что стандарт C ++ говорит о переполнении стека?
Я взглянул на черновик стандарта C ++ 0x, и, насколько я могу судить, там нет ничего о переполнении стека. Поиск «переполнения стека» не дал результатов, а поиск «стека» я получил только ссылки на раскручивание стека и std :: stack. Означает ли это,...
413 просмотров
schedule
07.10.2023
Зачем STL-структурам данных нужны полностью определенные типы
При поиске решения этого вопроса я обнаружил эта ветка на другом форуме , в котором говорится, что стандарт требует, чтобы все параметры шаблона для STL-Datastructure были полностью определены. Это означает, что создание структуры, которая...
278 просмотров
schedule
12.12.2022
Могу ли я привести пример из реальной жизни, когда нестатическая функция-член, не обращающаяся к объекту, вызываемому через нулевой указатель, вызывает наблюдаемые проблемы?
Возможный дубликат: Когда вызов функции-члена для нулевого экземпляра приводит к неопределенному поведению?
Что-нибудь вроде этого:
class Class {
public:
void Method()
{
//empty;
}
};
Class* object = 0;...
558 просмотров
schedule
08.01.2024
Что происходит, когда rep-префикс присоединяется к нестроковой инструкции?
Я попытался выяснить разницу в скорости между обычными циклами, циклами loop и встроенными циклами rep . Я написал три программы для сравнения поведения:
Программа 1
_start: xor %ecx,%ecx
0: not %ecx
dec %ecx
jnz 0b...
3378 просмотров
schedule
04.07.2023
Вывод printf (%d %d, c++, c); тоже неопределенный?
Недавно я наткнулся на сообщение Каков правильный ответ для cout ‹‹ c++ ‹‹ c;? и задавался вопросом, будет ли вывод
int c = 0;
printf ("%d %d", c++, c);
также не определен??
Я изучал в лекциях, что постфиксные и префиксные операторы...
5452 просмотров
schedule
26.09.2023
Доступ к неактивному члену союза и неопределенному поведению?
У меня создалось впечатление, что доступ к члену union , отличному от последнего набора, - это UB, но я не могу найти надежную ссылку (кроме ответов, утверждающих, что это UB, но без какой-либо поддержки со стороны стандарта).
Итак, это...
21159 просмотров
schedule
06.01.2023
Смущает неопределенное поведение оператора сдвига C ++ и обертка пространства шаблона
Меня смущает то, что я прочитал в разделе «Операторы сдвига» в статья о неопределенном поведении C ++ .
В архитектуре ARM операторы сдвига всегда ведут себя так, как если бы они выполнялись в 256-битном пространстве шаблона, независимо от...
1047 просмотров
schedule
29.03.2022
Код работает только в том случае, если все переменные сначала установлены в 0. УБ?
Этот код дает сбой случайным образом, правильно идентифицируя одни числовые палиндромы и сбой на других.
#include <stdio.h>
int main(int argc, char *argv[])
{
int n, reverse = 0, temp;
printf("Enter a number to check if it is a...
279 просмотров
schedule
08.01.2024
Приводит ли структура T* к неопределенному поведению структуры C*, если первым полем T является C?
Пытаясь отладить проблему, с которой я столкнулся, используя Speex, я заметил, что он (ну, не только Speex, но и некоторый пример кода) делает следующее:
Возвращает указатель на EncState из функции инициализации.
Приведите этот указатель к...
294 просмотров
schedule
29.04.2022
Можно ли вернуть целое число, разыменовав указатель?
int f(int *x)
{
*x = 5;
return *x;
}
int main()
{
int * y = 0;
int z = f(y);
}
Почему этот код выдает ошибку времени выполнения?
323 просмотров
schedule
04.03.2022
Что вернет функция, если нет явного «возврата»
Я столкнулся с этой проблемой, когда забыл написать предложение return функции, но в gcc не было ни предупреждения, ни ошибки. Я исправил это, но начал задаваться вопросом, почему функция возвращает что-то бессмысленное без return . Вот...
2495 просмотров
schedule
03.05.2024
Почему определяется поведение беззнакового целочисленного переполнения, а подписанное целочисленное - нет?
Беззнаковое целочисленное переполнение хорошо определяется стандартами C и C ++. Например, стандарт C99 ( §6.2.5/9 ) состояния
Вычисление с участием беззнаковых операндов никогда не может быть переполнено, потому что результат, который не...
50559 просмотров
schedule
26.11.2022
Почему это неопределенное поведение?
Мой ответ на этот вопрос был следующей функцией:
inline bool divisible15(unsigned int x)
{
//286331153 = (2^32 - 1) / 15
//4008636143 = (2^32) - 286331153
return x * 4008636143 <= 286331153;
}
На моей машине с компилятором...
2603 просмотров
schedule
10.03.2022
Пример оператора запятой в ansi c 1999 TC3
Когда я пытался выяснить, результат !0 определяется реализацией, ожидая, что он будет не равен нулю, я только что прочитал кое-что, что меня смутило.
(Кстати, может ли это быть в некоторых реализациях -1 или 1 или это строго определено? Если...
124 просмотров
schedule
11.04.2023
Автоматическое закрытие приложения для Android с помощью Intent?
Я сделал простое приложение для начинающих с помощью Drawables и Intent. Идея состоит в том, чтобы выполнить четыре действия и с помощью потока перейти от одного к другому действию, и когда он дойдет до последнего действия, я хочу автоматически...
6974 просмотров
schedule
26.07.2022