Вопросы по теме 'post-increment'

Является ли поведение return x++; определенный?
Если у меня есть, например, класс с методом экземпляра и переменными class Foo { ... int x; int bar() { return x++; } }; Определено ли поведение при возврате постинкрементной переменной?
18219 просмотров
schedule 21.06.2023

Приоритет оператора.. () и ++
Салют.. У меня необычная проблема. Здесь, в этой таблице в библиотеке MSDN мы видим, что приоритет () выше, чем ++ (Pre-increment) . но когда я запускаю этот код, кажется, что приоритет ++(prefex) выше: int main() { int a=3,b=2,x;...
1297 просмотров

Постинкремент в цикле while
Следующий код меня немного смутил: char * strcpy(char * p, const char * q) { while (*p++=*q++); //return } Это урезанная реализация функции strcpy . Из этого кода мы видим, что указатели p и q увеличиваются, затем разыменовываются,...
3072 просмотров
schedule 18.12.2022

Объяснение пост-инкремента в С#
у меня есть код static void Main(string[] args) { int j = 0; for (int i = 0; i < 10; i++) j = j++; Console.WriteLine(j); } Почему ответ 0?
669 просмотров
schedule 09.04.2022

Чем отличается порядок вычисления выражений между C++ и Java?
У меня свело мозги, когда я пытался понять примеры на этой странице: http://answers.yahoo.com/question/index?qid=20091103170907AAxXYG9 Более конкретно этот код: int j = 4; cout << j++ << j << ++j << endl; дает...
629 просмотров

Требования к C++ OutputIterator после инкремента
C++ требует, чтобы тип OutputIterator X поддерживал выражения формы r++ , где r является экземпляром X . Этот постфиксный инкремент должен быть семантически эквивалентен: (*) { X tmp = r; ++r; return tmp; } и должен возвращать тип,...
688 просмотров
schedule 24.09.2023

Каким должен быть вывод echo ++$a + $a++
В руководстве по PHP, раздел приоритета операторов , есть такой пример: // mixing ++ and + produces undefined behavior $a = 1; echo ++$a + $a++; // may print 4 or 5 Я понимаю, что поведение не определено по следующей причине: Поскольку x...
3803 просмотров

в чем разница между printf и cout
Примерный код, подобный этому ниже: int x = 1; printf("%d,%d,%d",x,x++,x); //A statement cout<<x<<x++<<x<<endl; //B statement Я знаю, что последовательность выполнения идет справа налево, а почему результат...
7616 просмотров
schedule 29.05.2023

пре-инкремент и пост-инкремент в printf
int main() { int value = 4321; int *ptrVal = &value; printf("%d %d",++value,(*(int*)ptrVal)--); return 0; } Как работает преинкремент/постинкремент в приведенном выше операторе печати? И почему ответ 4321 4321?
1486 просмотров

Java: пре-, постфиксные приоритеты операторов
У меня есть два похожих вопроса о приоритетах операторов в Java. Первый: int X = 10; System.out.println(X++ * ++X * X++); //it prints 1440 Согласно учебнику Oracle : постфикс (expr++, expr --) операторы имеют более высокий приоритет,...
3673 просмотров

Является ли iter++-›empty() допустимым выражением?
Является ли iter++->empty() допустимым выражением? iter is an iterator of a vector of string s. Я спрашиваю, потому что, учитывая приоритет операторов, -> и () должны предшествовать приращению постфикса, но я действительно не...
203 просмотров
schedule 23.02.2022

Относительно увеличения поста
int get() { static i = 1; return i++; } int main(int argc, char *argv[]) { printf("%d %d %d\n", get(), get(), get()); return 0; } Вывод: 3 2 1 (порядок зависит от компилятора) Вопрос: Но почему...
100 просмотров
schedule 28.05.2022

Предварительное и последующее увеличение
Сегодня я пересмотрел Pre Increment и Post Increment. Основные определения я знаю. Pre Increment — увеличивает значение и возвращает значение. Пост-приращение — увеличивает значение и возвращает значение до приращения. Но делая...
844 просмотров

аргумент переменной длины в программе c
В следующей программе #include<stdio.h> int main() { int a; a=5; printf("%d %d %d\n", a, a++ , a++); //statement 1 a=5; printf("%d %d %d\n", a, ++a , ++a); //statement 2 return 0; } Вывод 7 6 5 7 7 7 Мой вопрос, почему у ++ и...
66 просмотров
schedule 23.01.2023

Разница между * ptr + = 1 и * ptr ++ в C
Я только начал изучать C, и когда делал один пример о передаче указателя на указатель в качестве параметра функции, я обнаружил проблему. Это мой пример кода: #include <stdio.h> #include <string.h> #include <stdlib.h> int*...
18769 просмотров
schedule 06.04.2022

«В любом случае, следуйте рекомендациям: предпочитайте ++ i над i ++, и вы не ошибетесь». В чем причина этого в C?
Я наткнулся на этот ответ на этот вопрос. В одной из строк автор упоминает: В любом случае следуйте принципу «предпочитайте ++i i++ », и вы не ошибетесь. Я знаю, что ++i немного быстрее, чем i++ , но подумал, что у них нет...
333 просмотров
schedule 24.04.2024

Как unsigned int ведет себя с циклом while?
У меня есть этот небольшой фрагмент кода, и мне трудно понять, что может быть результатом? int main() { unsigned int i=65000; while ( i++ != 0 ); printf("%d",i); return 0; } Я чувствую, что постинкремент играет важную роль в...
451 просмотров

Оператор пост- и преинкремента OCJA-1.8
Я практикую операторы java post и pre increment, где у меня есть путаница, чтобы понять вывод программы ниже. Как он сгенерировал вывод как «8»? public class Test{ public static void main(String [] args){ int x=0; x=++x + x++ + x++ +...
50 просмотров

Прирост публикации в c
Я получаю вывод как 0..0 в приведенной ниже программе. Почему j не увеличивается при проверке условия? int main(int argc, char const *argv[]) { int i=0,j=0; if(i&&j++) printf("%d..%d",i++,j); printf("%d..%d",i,j);...
117 просмотров
schedule 14.01.2024

Я не понимаю, почему в этой программе a равно 1, а b равно 0
Я не понимаю, почему a равно 1, а b равно 0 в конце. Они должны быть одинаковыми, на мой взгляд. Заранее спасибо. #include "stdio.h" int main() { int a=0; int b=0; a++; printf("a=%d,b=%d",a,b++); return 0; }
91 просмотров
schedule 09.07.2023