Результаты поиска по запросу "sequence-points"

5 ответов

Это «* ptr ++ = * ptr + a» неопределенное поведение?

Ну, я не очень нуждаюсь в этом ответе, я просто любознательный. Выражения как*ptr++ = a совершенно действительны, так как мы работаем над двумя объектамиptr а также*ptr но если я напишу*ptr++ = *ptr + a это все еще действует? Например, ...

2 ответа

Гарантирует ли стандарт C ++ 11, что временный объект, переданный функции, будет создан до вызова функции?

Гарантирует ли стандарт C ++ 11, что все 3 временных объекта были созданы до начала выполнения функции?Даже если временный объект передан как:объектRvalue сс...

3 ответа

Почему это неопределенное поведение?

ТОП публикаций

2 ответа

Точка последовательности из вызова функции?

Это еще один вопрос о последовательности, но довольно простой: #include <stdio.h> void f(int p, int) { printf("p: %d\n", p); } int g(int* p) { *p = 42; return 0; } int main() { int p = 0; f(p, g(&p)); return 0; }Это неопределенное поведение? Или ...

0 ответов

Не могли бы вы показать нам соответствующий код?

оложим, что у нас есть следующий фрагмент кода: #include <pthread.h> #include <stdio.h> #include <stdlib.h> void guarantee(bool cond, const char *msg) { if (!cond) { fprintf(stderr, "%s", msg); exit(1); } } bool do_shutdown = false; // Not ...

9 ответов

Почему a = (a + b) - (b = a) плохой выбор для замены двух целых чисел?

Я наткнулся на этот код для замены двух целых чисел без использования временной переменной или использования побитовых операторов. int main(){ int a=2,b=3; printf("a=%d,b=%d",a,b); a=(a+b)-(b=a); printf("\na=%d,b=%d",a,b); return 0; }Но я думаю, ...

6 ответов

Запятого нет. Запятая разделяет аргументы в вызове функции.

ли точка последовательности между двумя присваиваниями в следующем коде: f(f(x=1,1),x=2);

1 ответ

Как работают операции Prefix (++ x) и Postfix (x ++)?

Может кто-нибудь сказать мне, как на самом деле работают префиксные / постфиксные операторы? Я много искал в интернете, но ничего не нашел. Из того, что я могу сказать, Prex сначала увеличивает, затем выполняет операцию, а затем ...

6 ответов

С какими проблемами вы столкнулись из-за точек последовательности в C и C ++?

Ниже приведены две распространенные проблемы, приводящие к неопределенному поведению из-за правил точки последовательности: a[i] = i++; //has a read and write between sequence points i = i++; //2 writes between sequence pointsС какими другими ...

2 ответа

Порядок оценки аргумента между связанными статическими вызовами функций

Мне любопытно, почему существует разница в порядке вычисления аргументов между статическими и связанными функциями-членами. Из ответов наэтот ...