Answer the question
In order to leave comments, you need to log in
Primary Name Server Not Listed At Parent. What problems might arise?
Good afternoon!
A similar topic has already been Problem with DNS Primary Name Server Not Listed At Parent. How to remove the error? , but up to the end did not understand whether this error can be ignored.
The site https://mxtoolbox.com/domain/baltbereg.com gives the error Primary Name Server Not Listed At Parent.
[[email protected] ~]# dig +trace baltbereg.com
baltbereg.com. 172800 IN NS ns1.valuehost.com.
baltbereg.com. 172800 IN NS ns2.valuehost.com.
baltbereg.com. 172800 IN NS ns3.valuehost.com.
;; Received 703 bytes from 192.35.51.30#53(f.gtld-servers.net) in 32 ms
baltbereg.com. 1800 IN A 92.53.96.238
baltbereg.com. 1800 IN NS ns2.valuehost.ru.
baltbereg.com. 1800 IN NS ns3.valuehost.ru.
baltbereg.com. 1800 IN NS ns1.valuehost.ru.
;; Received 124 bytes from 217.112.42.27#53(ns1.valuehost.com) in 2 ms
Answer the question
In order to leave comments, you need to log in
Well, of course, what the teacher expects from you, we still can’t guess here. I would just answer that this is a name for a variable. I disagree with some of the answers here, as the compiler will not always allocate memory for a reference - a local reference to a local variable will just be just the second name in the compiler's identifier table when compiling the program.
The main feature of the link is that it is an abstract l-value, i.e. an entity to which something can be assigned (if the base type is not a const type). That is, a link always wraps around some address in memory, and this address is constant for the lifetime of the link (the link cannot be "rearranged" to another memory area). That is why references always need to be initialized.
WHAT to initialize is another matter. It can be a variable, or it can be a dereferenced pointer.
Depending on the situation, technically, the link can be implemented in different ways. If it is a link to lok. variable, most compilers will simply add the new name to the table. No additional memory will be allocated. If the reference comes as a parameter or is given as a return value, then most likely it will be necessary to implement it as a pointer (pass/return pointer). However, let me remind you once again: the link hides the technical details, you work with it like with a regular variable. Moreover, it hides so much that it can even extend the life of temporary objects.
Now let's try to compare the link and other entities in the language.
Reference definition vs normal variable definition:
defining an ordinary variable is always allocating memory and adding a new name to the compiler table for that memory area. The definition of a link is, first of all, the DEFINITION of a NAME, and already in cases where it is impossible to bind this NAME to an ADDRESS at compile time (i.e., for example, if a link is passed as a function parameter), then a pointer will be used to implement the link. It is important that the compiler chooses how to implement the reference's behavior. In any case, the purpose of the reference is to wrap already ALLOCATED memory in l-value (it doesn't matter at all, on the stack, heap or somewhere else). New memory is NOT allocated to store the value of the target type. If you have a variable and a reference / several references to it, then when you assign a value through any of the entities, you will change the same memory area.
Ссылка vs указатель:
- самое важное отличие - указатель САМ ПО СЕБЕ является переменной. Под указатель int* компилятор выделит память также, как и под int. Указатель существует сам по себе, ему (если он не const) можно присваивать новые значение, можно присвоить nullptr. Можно даже хранить в нем совершенно некорректный адрес и все будет ок до тех пор, пока вы не разыменуете его. Только когда вы разыменовываете указатель, вы превращаете его в l-value, и с этого момента между ним и ссылкой разницы нет.
- the second difference is the actual need for dereferencing. Because the pointer is an independent variable, to access the address that the pointer looks at, you need to make it *p. It is at this moment that the compiler begins to consider the value of the pointer as an address in memory with which you are going to do something (to be quite precise, but not at the moment of dereference, but when you try to read / write. In principle, you can even initialize the reference with an incorrect pointer , and the program won't crash until you try to read/assign from that link).
- with that said, a reference can roughly be considered a "constant pointer with automatic dereference". Rough, because according to the standard, there are nuances, such as the aforementioned extension of the life of temporary objects.
This is a variable that stores inside the memory address in which an object of a certain type is stored. Unlike a pointer, a reference must be initialized with an initial value and cannot be null.
Более жесткий вариант указателя. Ссылаться можно только на существующую переменную, например.
Ну и чтобы получить значение по ссылке, нет необходимости в явном разименовывании.
Подробности, например, в вики (в качестве старта)
Допустим имеем такой код:
int a = 5; // это переменная а = 5 (допустим по адресу 0x333333)
// она хранится в памяти в какой-то ячейке и у этой ячеки есть свой номер
// и чтобы узнать этот номер надо к переменной "а" применить "&" - это адрес или ссылка
// а указатель специальный тип для хранения адреса переменной и объявляется так
int* ptrA = &a;
// указатель должен быть сразу проинициализирован
// теперь ptrA = 0x333333
// *ptrA = 5; - мы разименовали адрес хранящийся в переменной ptrA... Сказали процессору получить знвчение по адресу что в ptrA
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question