# Type Conversion

Type conversion (tip çevirmə) Go dilində müxtəlif məlumat tipləri arasında çevirmələr etmək üçün istifadə olunur. Go, statik tipli bir dildir, bu səbəbdən bir tipdən digərinə çevirmə etmək üçün müvafiq çevirmə operatorlarından istifadə etməlisiniz.

## Tip Çevirmənin Əsasları

Go dilində tip çevirməsi bir dəyişənin bir tipdən digər tipə çevrilməsi üçün istifadə olunur. Çevirmə yalnız uyumlu tiplər arasında mümkündür. Tip çevirmə prosesində, konkret bir məlumat tipi digər bir tipə çevrilir, bu da müəyyən bir funksiyanı və ya əməliyyatı həyata keçirmək üçün lazım ola bilər.

## Tip Çevirmə Nümunələri

### Ən Sadə Tip Çevirmə

Aşağıdakı misalda, `int` tipində bir dəyişəni `float64` tipinə çevirmək göstərilir:

```go
package main

import "fmt"

func main() {
    var i int = 42
    var f float64 = float64(i) // int tipindən float64 tipinə çevirmə
    fmt.Println(f) // 42.0
}
```

Burada, `i` dəyişəni `int` tipindədir və onu `float64` tipinə çevirmək üçün `float64(i)` ifadəsi istifadə olunur.

### Stringə Çevirmə

Bir dəyişəni `string` tipinə çevirmək üçün `string()` funksiyasından istifadə edilir:

```go
package main

import "fmt"

func main() {
    var i int = 123
    var s string = string(i) // int tipindən string tipinə çevirmə
    fmt.Println(s) // Əslində bu doğru nəticə verməyəcək, çünki bu ASCII kodunu alacaq.
}
```

Bu misalda, `int` tipindəki dəyişəni `string` tipinə çevirmək `string(i)` istifadə edilir, amma burada `i` dəyişəni ASCII kodu kimi təfsir olunur, bu səbəbdən nəticə gözlənilməz ola bilər.

### Numeric Tiplər Arasında Çevirmə

Fərqli numeric tiplər arasında çevirmə (məsələn, `int` və `float64` arasında) `float64` kimi daha geniş tipdən daha dar tiplərə çevrilərkən məlumat itkisi ola bilər.

```go
package main

import "fmt"

func main() {
    var f float64 = 3.14159
    var i int = int(f) // float64 tipindən int tipinə çevirmə
    fmt.Println(i) // 3
}
```

Bu misalda, `float64` tipindəki dəyişəni `int` tipinə çevirmək `int(f)` istifadə edilir. Çevirmə prosesində ondalıklı hissə itirilir.

### Type Conversion with Functions

Dəyişənlərin və funksiyaların parametr tipləri arasında çevirmələr də edə bilərsiniz:

```go
package main

import (
    "fmt"
    "strconv"
)

func main() {
    var s string = "123"
    var i int
    var err error

    i, err = strconv.Atoi(s) // string tipindən int tipinə çevirmə
    if err != nil {
        fmt.Println("Error:", err)
        return
    }

    fmt.Println(i) // 123
}
```

Burada, `strconv.Atoi` funksiyası string tipindəki dəyəri `int` tipinə çevirmək üçün istifadə olunur.

## Nəticə

Go dilində tip çevirmə, fərqli məlumat tipləri arasında çevirmələr edərək müxtəlif əməliyyatları həyata keçirmək üçün əhəmiyyətlidir. Çevirmə prosesində məlumat itkisini və potensial səhvləri nəzərə almaq vacibdir. Tip çevirməni düzgün istifadə edərək, proqramınızı daha effektiv və çevik hala gətirə bilərsiniz.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.golang.az/type-conversion.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
