Go Programming Language Increment and Decrement Operations

Go Programming Language Increment and Decrement Operations

Go language has special increment and decrement syntax.

Increment Operation

variable_name++ to increment by 1. Example a++ means a = a+1

// both code is same
a = a + 1
a++

Go Increment Example

package main                                                               	 
                                                                           	 
import "fmt"                                                               	 
                                                                           	 
func main() {                                                              	 
	// declare variable                                                    	 
	var a int                                                              	 
                                                                           	 
	// assign value                                                        	 
	a = 5                                                                  	 
                                                                           	 
	fmt.Printf("a: %d\n", a)                                               	 
                                                                           	 
	//increment                                                            	 
	a = a + 1                                                              	 
	fmt.Printf("a+1: %d\n", a)                                             	 
                                                                           	 
	a++                                                                    	 
	fmt.Printf("a++:%d\n", a)                                              	 
}
Output:
$ go build increment.go
$ ./increment
a: 5
a+1: 6
a++:7

++a is not supported in Go programming.

package main                                                               	 
                                                                           	 
import "fmt"                                                               	 
                                                                           	 
func main() {                                                              	 
	// declare variable                                                    	 
	var a int                                                              	 
                                                                           	 
	// assign value                                                        	 
	a = 5                                                                  	 
                                                                           	 
	fmt.Printf("a: %d\n", a)                                               	 
                                                                           	 
	//increment                                                            	 
	a = a + 1                                                              	 
	fmt.Printf("a+1: %d\n", a)                                             	 
                                                                           	 
	++a                                                                    	 
	fmt.Printf("++a:%d\n", a)                                              	 
}
Build error:
$ go build increment.go
# command-line-arguments
./increment.go:18: syntax error: unexpected ++, expecting }

Decrement Operation

variable_name-- to decrement by 1. Example a-- means a = a - 1

// both code is same
a = a - 1
a--

Go Decrement Example

package main                                                               	 
                                                                           	 
import "fmt"                                                               	 
                                                                           	 
func main() {                                                              	 
	// declare variable                                                    	 
	var a int                                                              	 
                                                                           	 
	// assign value                                                        	 
	a = 5                                                                  	 
                                                                           	 
	fmt.Printf("a: %d\n", a)                                               	 
                                                                           	 
	// decrement                                                           	 
	a = a -1                                                               	 
	fmt.Printf("a - 1: %d\n", a)                                            	 
                                                                           	 
	a--                                                                    	 
	fmt.Printf("a--: %d\n", a)                                              	 
}
Output:
$ go build decrement.go
$ ./decrement
a: 5
a - 1: 4
a--: 3

--a is not supported in Go programming.

package main                                                               	 
                                                                           	 
import "fmt"                                                               	 
                                                                           	 
func main() {                                                              	 
	// declare variable                                                    	 
	var a int                                                              	 
                                                                           	 
	// assign value                                                        	 
	a = 5                                                                  	 
                                                                           	 
	fmt.Printf("a: %d\n", a)                                               	 
                                                                           	 
	// decrement                                                           	 
	a = a -1                                                               	 
	fmt.Printf("a - 1: %d\n", a)                                            	 
                                                                           	 
	--a                                                                    	 
	fmt.Printf("--a: %d\n", a)                                              	 
}
Build error:
$ go build decrement.go
# command-line-arguments
./decrement.go:18: syntax error: unexpected --, expecting }