|
|
автор: sms-send (17.06.2010 в 15:20) |
|
|
для: Alexhoppus
(10.06.2010 в 03:30)
| |
Этот оператор записывает в переменную не саму строку, а значение указателя новой строки. Старый указатель, при этом затирается. | |
|
|
|
|
|
|
| int *q;
char *p;
p = (char*)malloc(sizeof(char));
q = (int*)malloc(sizeof(int));
p="string";
cout<<q<<endl;
cout<<p<<endl; |
Почему указатель на строку содержит в себе не адрес начального бита выделенной памяти а саму строку? Почему если мы объявили char *p; указатель p, то мы можем присваивать ему строку p="adasdas"; Это сделано ради удобство, но получается нет никакой строгости? Это исключение или я правила плохо знаю? | |
|
|
|
|