Skip to main content

Go Variables

The most general form to declare a variable in Golang uses the var keyword, an explicit type.

Examples for Variable declaration and initialization using Golang:

package main
import "fmt"
func main() {

	// 1. Declare a variable and initialize it [Typed Variable]
		var a string
		a = "vignesh"
		fmt.Println(a)
        
        // declaration and initialization at a same time
        // var a string = "vignesh"
        
	//default values for types: 
        // int   -> 0, string -> "", 
        // float -> 0, byte   -> 0
        // bool  -> false

	// 2. Shortcut variable declaration (dynamic)
		b := "vicky"
		fmt.Println(b)

	// 3. Go can initialize the type of the variable [UnTyped Variable]
		var c = false
		fmt.Println(c)

	// 4.We can declare and initialize multiple variables with multiple types at a time
		var x, y, z = 1, "abc", 12.0
		fmt.Println(x)
		fmt.Println(y)
		fmt.Println(z)

		m, n := 1, 1.2
		fmt.Println(m)
		fmt.Println(n)
}

Output:

vignesh
vicky
false
1
abc
12
1
1.2

Comments

Popular posts from this blog

Crypto ED25519 Signing and Verifying using Golang

The Edwards-curve Digital Signature Algorithm (ECDSA) is used to create a digital signature using an enhancement of the Schnorr signature with Twisted Edwards curves. Overall it is faster that many other digital signature methods, and is strong for security. One example of ECDSA is Ed25519, and which is based on Curve 25519. It generates a 64-byte signature value of (R,s), and has 32-byte values for the public and the private keys. Example : package main import ( "crypto/ed25519" "crypto/rand" "encoding/hex" "fmt" "log" ) func main() { publickey, privatekey, err := ed25519.GenerateKey(rand.Reader) if err != nil { fmt.Println("cannot generate ecdsa keys") log.Fatal(err) } msg := "hello" signedBytes := ed25519.Sign(privatekey, []byte(msg)) fmt.Println("Signed Message :", hex.EncodeToString(signedBytes)) if !ed25519.Verify(publickey, []byte(msg), signedBytes) { fmt.Println("ver...

Crypto RSA Signing and Verification in Golang

  RSA [Rivest-shamir-Adleman] encryption is one of the most widely used algorithms for secure data encryption. Signing and Verification:   RSA works by generating form of key pair of private and public keys. For Signing:  we need to provide some inputs,  A random reader used for generating random bits because if we provide the same input, it doesn't give the same output as last time. Before signing, we need to hash our message. we also need to provide which hash function is used for message hashing. Finally, private key.  For Verifying: we need to provide some inputs,  hash of our message. which hash function is used for message hashing while signing. Finally, public key and signature what we obtained while signing.  Example: package main import ( "crypto" "crypto/rand" "crypto/rsa" "crypto/sha256" "encoding/hex" "fmt" "log" ) func main() { privatekey, publickey := GenerateRsaKeys() message := ...

Why Go Language?

Go Language: Open Source Programming language Statically Typed language Makes sharing code easy Similar to C programming language Organization that use Go includes Google, Docker, Kubernetes, Cloudflare, Dropbox, Netflix & Uber. Why Go language? C like Syntax Compiles to native code i.e. one executable file is need to run the whole program. Garbage collection Concurrency built-in language Compatibility promise → Once a program written to the go one specification will continue to compile and run correctly, over the lifetime of that specification. Why Go Compiler is fast? Simple and Minimalistic (20 keywords only) Does not allows unused dependencies No circular dependencies Does not use header files Solving Modern problems with Go: Go has concise syntax with few keywords to remember. Languages like C or C++ offers fast execution, whereas languages like Ruby or Python offers rapid application development, Go bridges these computing worlds and offers development fast. Modern Computers ...