Объяснение к посту выше 👆
Да, такой код используется чтобы поменять местами два значения. Операция подмены в Go защищена от побочных эффектов так как назначаемые значения гарантированно хранятся во временных переменных перед началом фактического присвоения, поэтому порядок не имеет значения.
Да, такой код используется чтобы поменять местами два значения. Операция подмены в Go защищена от побочных эффектов так как назначаемые значения гарантированно хранятся во временных переменных перед началом фактического присвоения, поэтому порядок не имеет значения.
Что правильно об этом коде?
Anonymous Quiz
32%
он будет возвращать случайное число от 0 до 19 каждый раз, когда мы запускаем этот код
31%
он будет возвращать одно и то же число при каждом запуске
15%
код не скомпилируется, потому что тип переменной должен быть int31
22%
он будет возвращать случайное число от 0 до 20 при каждом запуске
Что из следующего справедливо в отношении цикла в Go, если присутствует предложение where (init; condition; increment)?
Anonymous Quiz
6%
Первый шаг выполняется сначала, и только один раз.
10%
init позволяет вам объявлять и инициализировать любые переменные управления циклом.
6%
Вы не обязаны указывать инструкцию в шаге init, пока отображается точка с запятой.
78%
Все вышеперечисленное.
В каком из следующих методов передачи параметров изменения, внесенные в параметр внутри функции, не влияют на аргумент?
Anonymous Quiz
78%
вызов по значению.
9%
вызов по ссылке
6%
оба вышеуказанные
7%
ничего из вышеперечисленного.м
Какой вариант объявления переменной не скомпилируется?
Anonymous Quiz
10%
var p = 99
79%
var p := 99
3%
p := 99
8%
все варианты скомпилируются
Что выведет код?
Anonymous Quiz
26%
func(int), struct
23%
func(int), int
28%
func(), struct
23%
func(), int
Можно ли безопасно конвертировать x в тип IntPtr?
Anonymous Quiz
8%
Не уверен
50%
Можно
22%
Нельзя
5%
Пойду проверю
16%
Дайте объяснение
👆Объяснение к предыдущему вопросу
👨🏻💻 Можно, тогда функция будет выглядеть вот так:
func convert(x MyIntPtr) (y IntPtr) {
a := (*MyInt)(x)
b := (*int)(a)
y = IntPtr(b)
return y
}
Вариант с помощью unsafe:
func convert(x MyIntPtr) (y IntPtr) {
y = IntPtr(unsafe.Pointer(x))
return
}
Golang задачи с собеседований
👨🏻💻 Можно, тогда функция будет выглядеть вот так:
func convert(x MyIntPtr) (y IntPtr) {
a := (*MyInt)(x)
b := (*int)(a)
y = IntPtr(b)
return y
}
Вариант с помощью unsafe:
func convert(x MyIntPtr) (y IntPtr) {
y = IntPtr(unsafe.Pointer(x))
return
}
Golang задачи с собеседований
Что верно об этом коде?
Anonymous Quiz
25%
он не скомпилируется
49%
он вызовет панику
26%
он скомпилируется