{"id":8654,"date":"2022-09-14T19:58:02","date_gmt":"2022-09-14T14:28:02","guid":{"rendered":"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/"},"modified":"2022-09-14T19:58:02","modified_gmt":"2022-09-14T14:28:02","slug":"solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c","status":"publish","type":"post","link":"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/","title":{"rendered":"[Solved] &#8216;In any case, follow the guideline &#8220;prefer ++i over i++&#8221; and you won&#8217;t go wrong.&#8217; What is the reason behind this in C?"},"content":{"rendered":"<p> [ad_1]<br \/>\n<\/p>\n<div id=\"answer-35644073\" class=\"answer js-answer accepted-answer js-accepted-answer\" data-answerid=\"35644073\" data-parentid=\"35643963\" data-score=\"5\" data-position-on-page=\"1\" data-highest-scored=\"1\" data-question-has-accepted-highest-score=\"1\" itemprop=\"acceptedAnswer\" itemscope itemtype=\"https:\/\/schema.org\/Answer\">\n<div class=\"post-layout\">\n<div class=\"votecell post-layout--left\"><\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"s-prose js-post-body\" itemprop=\"text\">\n<p>In the case of<\/p>\n<pre><code>for (i=start; i&lt;end; i++)\n<\/code><\/pre>\n<p>vs<\/p>\n<pre><code>for (i=start; i&lt;end; ++i)\n<\/code><\/pre>\n<p>their meanings are <strong>completely identical<\/strong>, because the value of the expressions <code>i++<\/code> and <code>++i<\/code> are not used. (They are evaluated for side effects only.) Any compiler which produces different code for the two is pathologically bad and should be chucked in the garbage. Here, use whichever form you prefer, but <code>i++<\/code> is idiomatic among C programmers.<\/p>\n<p>In other contexts, use the form that yields the value you want. If you want the value from before the increment, use <code>i++<\/code>. This makes sense for things like:<\/p>\n<pre><code>index = count++;\n<\/code><\/pre>\n<p>or<\/p>\n<pre><code>array[count++] = val;\n<\/code><\/pre>\n<p>where the old value of count becomes the index of a new slot you&#8217;re going to store something in.<\/p>\n<p>On the other hand, if you want the value after increment, use <code>++i<\/code>.<\/p>\n<p>Note that for integer types, the following are all completely equivalent:<\/p>\n<ul>\n<li><code>i += 1<\/code><\/li>\n<li><code>++i<\/code><\/li>\n<li><code>i++ + 1<\/code><\/li>\n<\/ul>\n<p>and likewise the following are equivalent:<\/p>\n<ul>\n<li><code>(i += 1) - 1<\/code><\/li>\n<li><code>i++<\/code><\/li>\n<li><code>++i - 1<\/code><\/li>\n<\/ul>\n<p>For floating point and pointers it&#8217;s more complicated.<\/p>\n<p>As far as any objective reasons are concerned, the advice you found is just nonsense. If on the other hand you find <code>++i<\/code> easier to reason about, then feel free to take the advice, but this is going to depend entirely on the individual and what you&#8217;re used to.<\/p>\n<\/p><\/div>\n<div class=\"mt24\"><\/div>\n<\/div>\n<p>            <span class=\"d-none\" itemprop=\"commentCount\">2<\/span> <\/p><\/div>\n<\/div>\n<p>[ad_2]<\/p>\n<p>solved &#8216;In any case, follow the guideline &#8220;prefer ++i over i++&#8221; and you won&#8217;t go wrong.&#8217; What is the reason behind this in C? <\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ad_1] In the case of for (i=start; i&lt;end; i++) vs for (i=start; i&lt;end; ++i) their meanings are completely identical, because the value of the expressions i++ and ++i are not used. (They are evaluated for side effects only.) Any compiler which produces different code for the two is pathologically bad and should be chucked in &#8230; <a title=\"[Solved] &#8216;In any case, follow the guideline &#8220;prefer ++i over i++&#8221; and you won&#8217;t go wrong.&#8217; What is the reason behind this in C?\" class=\"read-more\" href=\"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/\" aria-label=\"More on [Solved] &#8216;In any case, follow the guideline &#8220;prefer ++i over i++&#8221; and you won&#8217;t go wrong.&#8217; What is the reason behind this in C?\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[320],"tags":[324,2151,2449],"class_list":["post-8654","post","type-post","status-publish","format-standard","hentry","category-solved","tag-c","tag-post-increment","tag-pre-increment"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>[Solved] &#039;In any case, follow the guideline &quot;prefer ++i over i++&quot; and you won&#039;t go wrong.&#039; What is the reason behind this in C? - JassWeb<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[Solved] &#039;In any case, follow the guideline &quot;prefer ++i over i++&quot; and you won&#039;t go wrong.&#039; What is the reason behind this in C? - JassWeb\" \/>\n<meta property=\"og:description\" content=\"[ad_1] In the case of for (i=start; i&lt;end; i++) vs for (i=start; i&lt;end; ++i) their meanings are completely identical, because the value of the expressions i++ and ++i are not used. (They are evaluated for side effects only.) Any compiler which produces different code for the two is pathologically bad and should be chucked in ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/\" \/>\n<meta property=\"og:site_name\" content=\"JassWeb\" \/>\n<meta property=\"article:published_time\" content=\"2022-09-14T14:28:02+00:00\" \/>\n<meta name=\"author\" content=\"Kirat\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirat\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/\"},\"author\":{\"name\":\"Kirat\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\"},\"headline\":\"[Solved] &#8216;In any case, follow the guideline &#8220;prefer ++i over i++&#8221; and you won&#8217;t go wrong.&#8217; What is the reason behind this in C?\",\"datePublished\":\"2022-09-14T14:28:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/\"},\"wordCount\":246,\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"keywords\":[\"c++\",\"post-increment\",\"pre-increment\"],\"articleSection\":[\"Solved\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/\",\"url\":\"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/\",\"name\":\"[Solved] 'In any case, follow the guideline \\\"prefer ++i over i++\\\" and you won't go wrong.' What is the reason behind this in C? - JassWeb\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#website\"},\"datePublished\":\"2022-09-14T14:28:02+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jassweb.com\/solved\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[Solved] &#8216;In any case, follow the guideline &#8220;prefer ++i over i++&#8221; and you won&#8217;t go wrong.&#8217; What is the reason behind this in C?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jassweb.com\/solved\/#website\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"name\":\"JassWeb\",\"description\":\"Build High-quality Websites\",\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jassweb.com\/solved\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\",\"name\":\"Jass Web\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"contentUrl\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"width\":693,\"height\":132,\"caption\":\"Jass Web\"},\"image\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\",\"name\":\"Kirat\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775798750\",\"contentUrl\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775798750\",\"caption\":\"Kirat\"},\"sameAs\":[\"http:\/\/jassweb.com\"],\"url\":\"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[Solved] 'In any case, follow the guideline \"prefer ++i over i++\" and you won't go wrong.' What is the reason behind this in C? - JassWeb","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/","og_locale":"en_US","og_type":"article","og_title":"[Solved] 'In any case, follow the guideline \"prefer ++i over i++\" and you won't go wrong.' What is the reason behind this in C? - JassWeb","og_description":"[ad_1] In the case of for (i=start; i&lt;end; i++) vs for (i=start; i&lt;end; ++i) their meanings are completely identical, because the value of the expressions i++ and ++i are not used. (They are evaluated for side effects only.) Any compiler which produces different code for the two is pathologically bad and should be chucked in ... Read more","og_url":"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/","og_site_name":"JassWeb","article_published_time":"2022-09-14T14:28:02+00:00","author":"Kirat","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirat","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/#article","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/"},"author":{"name":"Kirat","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31"},"headline":"[Solved] &#8216;In any case, follow the guideline &#8220;prefer ++i over i++&#8221; and you won&#8217;t go wrong.&#8217; What is the reason behind this in C?","datePublished":"2022-09-14T14:28:02+00:00","mainEntityOfPage":{"@id":"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/"},"wordCount":246,"publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"keywords":["c++","post-increment","pre-increment"],"articleSection":["Solved"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/","url":"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/","name":"[Solved] 'In any case, follow the guideline \"prefer ++i over i++\" and you won't go wrong.' What is the reason behind this in C? - JassWeb","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/#website"},"datePublished":"2022-09-14T14:28:02+00:00","breadcrumb":{"@id":"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jassweb.com\/solved\/solved-in-any-case-follow-the-guideline-prefer-i-over-i-and-you-wont-go-wrong-what-is-the-reason-behind-this-in-c\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jassweb.com\/solved\/"},{"@type":"ListItem","position":2,"name":"[Solved] &#8216;In any case, follow the guideline &#8220;prefer ++i over i++&#8221; and you won&#8217;t go wrong.&#8217; What is the reason behind this in C?"}]},{"@type":"WebSite","@id":"https:\/\/jassweb.com\/solved\/#website","url":"https:\/\/jassweb.com\/solved\/","name":"JassWeb","description":"Build High-quality Websites","publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jassweb.com\/solved\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/jassweb.com\/solved\/#organization","name":"Jass Web","url":"https:\/\/jassweb.com\/solved\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/","url":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","contentUrl":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","width":693,"height":132,"caption":"Jass Web"},"image":{"@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31","name":"Kirat","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/","url":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775798750","contentUrl":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775798750","caption":"Kirat"},"sameAs":["http:\/\/jassweb.com"],"url":"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/8654","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/comments?post=8654"}],"version-history":[{"count":0,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/8654\/revisions"}],"wp:attachment":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/media?parent=8654"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/categories?post=8654"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/tags?post=8654"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}