Страницы

Поиск по вопросам

воскресенье, 7 июля 2019 г.

Длина динамического массива

Здравствуйте. Хочу сделать програму которая находит в тексте расположение больших букв и записывает ето расположение в массив. Уже все проверил, все равно массив на еденицу меньший. В даной програме должно виводиться 0 40 76 104 123 и длина 5. Виводиться 0 40 76 104 123 и длина 4. Уже не знаю что й делать
#include #include #include #include
int main (void) { char str[] = {"London is the capital of great britain. Donald trump is a president of usa. A year consist of 365 days. Orange is a fruit. I love breaking bad."}; int *arrBig = (int*)malloc(500 * sizeof(int)); int numMasForBig = 0; for (int i = 1; i < strlen(str); i++) { if (*(str + i) >= 65 && *(str + i) <= 90) { numMasForBig++; arrBig[numMasForBig] = i; } } arrBig[0] = 0;
for (int i = 0; i < sizeof(arrBig); i++) { printf("%d ", arrBig[i]); } printf("
%d ", sizeof(arrBig));
free(arrBig); getch(); return 0; }


Ответ

sizeof(arrBig) - размер указателя, не имеет к длине массива никакого отношения.
printf("
%d ", numMasForBig + 1);

Комментариев нет:

Отправить комментарий