powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / char *pr; pr = (char *)malloc(n); узнать размер массива pr
5 сообщений из 5, страница 1 из 1
char *pr; pr = (char *)malloc(n); узнать размер массива pr
    #39801459
AdamAry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На чистом c:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
char *pr;
....
// вычисляем n
pr = (char *)malloc(n);
// Присваиваем элементам массива отдельные символы:
pr[0] = 'z';
....
pr[8] = 'a';
...



1. Как узнать размер массива (колво элементов) pr?
2. Как узнать колво символов в pr?
3. Надо ли вручную добавлять символ окончания строки после pr[8] = 'a';
типа?:
Код: plaintext
1.
pr[9] = '\0';
...
Рейтинг: 0 / 0
char *pr; pr = (char *)malloc(n); узнать размер массива pr
    #39801464
Фотография CEMb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AdamAry,

Код: plaintext
1.
2.
#include <malloc.h>
size_t _msize(void* ptr);



возвращает размер выделенного блока
...
Рейтинг: 0 / 0
char *pr; pr = (char *)malloc(n); узнать размер массива pr
    #39801470
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AdamAry1. Как узнать размер массива (колво элементов) pr?

Код: sql
1.
n/sizeof(*pr)


2. См. выше.
3. Зависит от задачи для которой массив создаётся.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
char *pr; pr = (char *)malloc(n); узнать размер массива pr
    #39801509
AdamAry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CEMb,

size_t z;
z = _msize(pr); // _msize(void* ptr);
printf("z: %d \n",z);
for(int i = 0; i < z; i++)
{
printf("%c\n", pr[i]); // не выводит
}

Как с помощью printf вывести данные из pr?
...
Рейтинг: 0 / 0
char *pr; pr = (char *)malloc(n); узнать размер массива pr
    #39801514
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AdamAryКак с помощью printf вывести данные из pr?

Именно так, как ты и написал. Для проверки можешь заменить %c на %d.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / char *pr; pr = (char *)malloc(n); узнать размер массива pr
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]