---
title: "++i and i++ : what’s the difference?"
url: https://daily.dev/posts/i-and-i-what-s-the-difference--nhsllbsim
source_url: https://www.embeddedrelated.com/showarticle/1629.php
type: article
source: "EmbeddedRelated"
published: 2026-05-31T07:47:45.857Z
updated: 2026-05-31T08:49:15.161Z
tags: ["c", "embedded", "compiler-optimization"]
reading_time: 5
upvotes: 0
comments: 0
language: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# ++i and i++ : what’s the difference?

**[EmbeddedRelated](https://daily.dev/sources/embeddedrelated)** · 5 min read · 0 upvotes · 0 comments

## Summary

A focused look at the pre-increment (++i) and post-increment (i++) operators in C, covering their semantic differences, how pointer arithmetic affects increment behavior (e.g., incrementing an unsigned* by sizeof(unsigned) rather than 1), and the subtle efficiency implications for embedded systems. The author recommends defaulting to pre-increment since post-increment requires storing the original value before incrementing, which can be an unnecessary overhead — especially with complex C++ objects — even if modern compilers often optimize it away.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.embeddedrelated.com/showarticle/1629.php>

---

Tags: [#c](https://daily.dev/tags/c), [#embedded](https://daily.dev/tags/embedded), [#compiler-optimization](https://daily.dev/tags/compiler-optimization)

[View this post on daily.dev](https://daily.dev/posts/i-and-i-what-s-the-difference--nhsllbsim)
