Отличие указателей на массив типов char и int [дубликат]

115
09 октября 2019, 03:10

На данный вопрос уже ответили:

  • Вывод на экран адресов памяти для типа char 2 ответа

Почему в выводе char получаем целый массив значений, а в int только адрес на первое значение, хотя примеры идентичны. Как вывести адрес каждого элемента я нашел,но это не главное. Хочу понять структуру как работает int с указателем и char с указателем.Где именно начинаются различия?

#include <iostream>
using namespace std;
int main(){
    int arr[3]={0,1,2};
    int *parr = arr;
    cout<<parr<<endl;
    char str []={'h','e','l','p'};
    char *p = str;
    cout<<p;
}
0x7ffd0f412958
help
Answer 1

Потому что есть такая вещь, как перегрузка функций. Функция operator<< для ostream& и char* работает, выводя все символы до нулевого, ну, а функция от ostream& и int* - совсем иначе, просто выводя адрес...

READ ALSO
Возможно ли из qtwebkit вырезать только момент интерпретации страницы?

Возможно ли из qtwebkit вырезать только момент интерпретации страницы?

Необходимо сделать многопоточный паук для сайтов, для анализа веб страниц

98
Как описать наследование в Xstream

Как описать наследование в Xstream

Имею xml подобного типа:

152
Сложный динамический Layout

Сложный динамический Layout

Есть layoutxml в нем около 100 textView и порядка 20-30 картинок, картинки сам по себе маленькие максимум 50 Кб

227
java создание демон-процесса

java создание демон-процесса

Есть какой-либо способ создать демон-процесс на windows, который будет работать в фоновом режиме, используя какую-либо библиотеку или стандартные...

149