Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C (СИ) Реализовать функцию, ограничивая число элементов ряда первым элементом, меньшим заданной величины eps Помогите сделать,что то совсем разобраться не могу. Вот само задание: Реализовать функцию, ограничивая число элементов ряда первым элементом, меньшим заданной величины eps. Рассчитать 10 значений из области сходимости. (Формула на картинке) Примерный код: #include "math.h" #include "stdio.h" double fact1(double n) { if(n==0) return 1; if(n==1) return 1; https://www.cyberforum.ru/ c-beginners/ thread2223716.html Кодирование Хэмминга C (СИ)
Здравствуйте! Подскажите, пожалуйста, что это значит в кодере Хэмминга (с&(1<<i))>>i c - символ, i - счётчик цикла. И как это работает? На бумаге могу закодировать нормально, а программу не понимаю.
C (СИ) Задан целочисленный массив размера N. Заменить в массиве все серии, длина которых равна k (вводится пользователем)СИ https://www.cyberforum.ru/ c-beginners/ thread2223571.html
Помогите! Срочно!!Задан целочисленный массив размера N. Заменить в массиве все серии, длина которых равна k (вводится пользователем) серией из одного нулевого элемента. Си
C (СИ) Функция getchar() https://www.cyberforum.ru/ c-beginners/ thread2223503.html
Помогите не могу понять как выполнить это задание ----Внесите изменения в программу, чтобы для ввода использовалась функция getchar(). (Подсказка: функция getchar()работает только с символьным типом данных) #include <stdio.h> /* комментарий к программе */
C (СИ) Двусвязный список
Добрый день! Не могли бы вы внятно объяснить, что такое структура данных, что такое двусвязный список и как, примерно, должен выглядеть код двусвязного списка? Заранее спасибо!
C (СИ) Функция удаления элемента структуры https://www.cyberforum.ru/ c-beginners/ thread2223491.html
Здравствуйте, в этой функции может удаляться любой элемент, кроме первого, как это можно исправить, все перепробовал, нечего не получается, помогите пожалуйста! root-указатель на начальный элемент структуры. pCur - элемент на котором мы сейчас находимся pNext- следующий элемент void deleteElem(listElem* elem) //Что бы удалить элемент, мы передаем указатель на область памяти, где он...
C (СИ) Игровое поле для крестики-нолики https://www.cyberforum.ru/ c-beginners/ thread2223313.html
Помогите сделать игровое поле , к которому удобно будет обращаться в игре "Крестики-нолики". А так же можно пожалуйста расписать план по созданию самой игры. Типа 1) вывод поля 2) ход игрока 1 и т.д . Нужно сделать курсовую , а сам разобраться никак не могу с игрой.
C (СИ) Объясните смысл задания?
По символьному файлу с программой на языке С создать новый файл, в котором выполнены все директивы #include (могут быть вложены). кто ни будь может объяснить что значит выполнены? с небольшим примером может. вот насчет "могут быть вложенны" не ясно так же
C (СИ) Задан вещественный массив размера 2*N, каждая пара элементов которого содержит координаты точки x и y Помогите, пожалуйста!!!!Задан вещественный массив размера 2*N, каждая пара элементов которого содержит координаты точки x и y. Определить номера пар задающих треугольник с минимальным периметром.(Си) https://www.cyberforum.ru/ c-beginners/ thread2223142.html C (СИ) Задана целочисленная матрица размера N×M. Переставить столбцы матрицы в порядке возрастания сумм их элементов https://www.cyberforum.ru/ c-beginners/ thread2223141.html
Помогите!!! Срочно!!!Задана целочисленная матрица размера N×M. Переставить столбцы матрицы в порядке возрастания сумм их элементов(СИ)
Через сколько лет коммерсант накопит сумму s, достаточную для покупки собственного магазина? (C++ -> Си) C (СИ)
#include <iostream> #include <windows.h> using namespace std; int main() { setlocale(LC_ALL, "Russian"); double target; cout<<"цель: "; cin>>target; double startup;
C (СИ) Определить номер первого четного элемента последовательности чисел Даны натуральное число n, действительные числа a1, …,an. Найти номер первого члена последовательности a1, …,an; если четных членов нет, то ответом должно быть число 0. При написании кода у меня возник вопрос. Если пользователь введёт все нечётные числа, то результатом должно быть число 0. Как записать это условие ? Фрагмент моего кода: #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> https://www.cyberforum.ru/ c-beginners/ thread2222886.html
0 / 0 / 0
Регистрация: 19.03.2018
Сообщений: 11
0

Почему так себя ведёт программа? Функции: malloc(), realloc(), free() - C (СИ) - Ответ 12282440

05.04.2018, 17:30. Показов 1687. Ответов 1
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Почему большинство значений в output 0 и несколько из значений не равно 0?

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
/*
 * malloc_play.c: bizzarro programma per studiare il comportamento delle system call
 *                malloc(), realloc() e free().
 *
 * versione 1.5 del 22/03/2018
 *
 * Programma sviluppato a supporto del laboratorio di
 * Sistemi di Elaborazione dell'Informazione del corso di laurea
 * in Informatica classe L-31 presso l'Universita` degli Studi di
 * Genova, anno accademico 2017/2018.
 *
 * Copyright (C) 2013-2018 by Giovanni Chiola <chiolag@acm.org>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 */
 
#include<stdlib.h>
#include<stdio.h>
 
/*** Just playing with the malloc(), realloc(), free()
 *** system calls in order to guess how memory management
 *** is implemented on this machine. If you get SEGMENTATION
 *** FAULT while addressing unallocated heap memory, just run
 *** the program with different "min" and/or "max" values,
 *** explicitly given on the command line through argv[]
 *** NOTICE: the default values are appropriate for the 32bit systems
 *** available in the labs ***/
int main(int argc, char**argv){
    unsigned char *p, *q, *oldp;
    int sz=1, min=-8, max=60;
 
    if ( argc > 1 )
        sscanf(argv[1],"%d",&sz);
    if ( sz <= 0 )
        sz = 1;
    else if ( sz > 300 )
        sz = 300;
    if ( argc > 2 )
        sscanf(argv[2],"%d",&min);
    if ( min > -1 )
        min = -1;
    else if ( min < -50 )
        min = -50;
    if ( argc > 3 )
        sscanf(argv[3],"%d",&max);
    if ( max < sz )
        max = sz;
    else if ( max > (sz+100) )
        max = sz+100;
    printf("... allocating %d unsigned chars, min=%d, max=%d\n\n",sz,min,max);
    p = (unsigned char*)malloc(sz);
    if ( p == NULL ) {
        printf("could not allocate p\n");
        exit(0);
      }
    printf("*p=%hhu\n",*p);
    { int i;
      for ( i = -1 ; i >= min ; i-- )
        printf("p[%d]=%hhu\n",i,p[i]);
      for ( i = 1 ; i <= max ; i++ )
        printf("p[%d]=%hhu\n",i,p[i]);
    }
    printf("\n... allocating %d more unsigned chars to a different pointer\n\n",sz);
    q = (unsigned char*)malloc(sz);
    if ( q == NULL ) {
        printf("could not allocate q\n");
        exit(0);
      }
    { int i;
      for ( i = -1 ; i >= min ; i-- )
        printf("q[%d]=%hhu\n",i,q[i]);
      for ( i = 0 ; i <= max ; i++ )
        printf("q[%d]=%hhu\n",i,q[i]);
    }
    { int i;
      for ( i = -1 ; i >= min ; i-- )
        printf("p[%d]=%hhu\n",i,p[i]);
      for ( i = 0 ; i <= max ; i++ )
        printf("p[%d]=%hhu\n",i,p[i]);
    }
    sz += 10;
    printf("\n... reallocating %d unsigned chars\n\n",sz);
    oldp = p;
    p = (unsigned char*)realloc((void*)p,sz);
    { int i;
      for ( i = -1 ; i >= min ; i-- )
        printf("p[%d]=%hhu\n",i,p[i]);
      for ( i = 0 ; i <= max ; i++ )
        printf("p[%d]=%hhu\n",i,p[i]);
      for ( i = -1 ; i >= min ; i-- )
        printf("oldp[%d]=%hhu\n",i,oldp[i]);
      for ( i = 0 ; i <= max ; i++ )
        printf("oldp[%d]=%hhu\n",i,oldp[i]);
    }
    sz += 15;
    printf("\n... reallocating %d unsigned chars\n\n",sz);
    p = (unsigned char*)realloc((void*)p,sz);
    { int i;
      for ( i = -1 ; i >= min ; i-- )
        printf("p[%d]=%hhu\n",i,p[i]);
      for ( i = 0 ; i <= max ; i++ )
        printf("p[%d]=%hhu\n",i,p[i]);
      for ( i = -1 ; i >= min ; i-- )
        printf("oldp[%d]=%hhu\n",i,oldp[i]);
      for ( i = 0 ; i <= max ; i++ )
        printf("oldp[%d]=%hhu\n",i,oldp[i]);
    }
    sz -= 25;
    printf("\n... reallocating %d unsigned chars\n\n",sz);
    p = (unsigned char*)realloc((void*)p,sz);
    { int i;
      for ( i = -1 ; i >= min ; i-- )
        printf("p[%d]=%hhu\n",i,p[i]);
      for ( i = 0 ; i <= max ; i++ )
        printf("p[%d]=%hhu\n",i,p[i]);
      for ( i = -1 ; i >= min ; i-- )
        printf("oldp[%d]=%hhu\n",i,oldp[i]);
      for ( i = 0 ; i <= max ; i++ )
        printf("oldp[%d]=%hhu\n",i,oldp[i]);
    }
    printf("\n... freeing p\n\n",sz);
    free((void*)p);
    { int i;
      for ( i = 0 ; i >= min ; i-- )
        printf("p[%d]=%hhu\n",i,p[i]);
    }
    printf("\n... freeing q\n\n",sz);
    free((void*)q);
    { int i;
      for ( i = 0 ; i >= min ; i-- )
        printf("q[%d]=%hhu\n",i,q[i]);
      for ( i = -1 ; i >= min ; i-- )
        printf("oldp[%d]=%hhu\n",i,oldp[i]);
      for ( i = 0 ; i <= max ; i++ )
        printf("oldp[%d]=%hhu\n",i,oldp[i]);
    }
    printf("\n... freeing oldp\n\n",sz);
    free((void*)oldp);
    { int i;
      for ( i = -1 ; i >= min ; i-- )
        printf("oldp[%d]=%hhu\n",i,oldp[i]);
      for ( i = 0 ; i <= max ; i++ )
        printf("oldp[%d]=%hhu\n",i,oldp[i]);
    }
    exit(0);
}


Вернуться к обсуждению:
Почему так себя ведёт программа? Функции: malloc(), realloc(), free() C (СИ)
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.04.2018, 17:30
Готовые ответы и решения:

Непонятно почему ведёт себя так программа
Задачка: //На шахматной доске 8х8 расположены три фигуры: ферзь, ладья и конь. //Требуется...

Нюансы работы с массивами: почему программа ведёт себя не так, как ожидается?
// ConsoleApplication20.cpp: определяет точку входа для консольного приложения. // #include...

Нюансы работы с оператором ветвления if else: почему программа ведёт себя не так, как ожидается?
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; void check_weekday(string day) { if...

Нюансы работы с оператором ветвления if else: почему программа ведёт себя не так, как ожидается?
Имеется код: int a; char q; for (;;) { cout &lt;&lt; &quot;Введите число: &quot;; cin &gt;&gt; a;

1
05.04.2018, 17:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.04.2018, 17:30
Помогаю со студенческими работами здесь

В чем преимущества new и delete и могут ли они действительно заменить функции calloc, malloc, free, realloc?
Язык программирования C поддерживает функции динамического управления пямятью: calloc, malloc,...

Почему IE так себя ведет?
У меня сайт на движке wordpress в браузерах Opera и Mozilla все работает отлично, а вот в IE сам...

Работа с памятью через malloc,realloc и free
Вот начал работать с памятью в c++ и появилось несколько вопросов. 1 - r = (int...

Почему DHCP ведет себя так?
Добрый день, В здании несколько организаций, но Интернет общий, настроил Mikrotik RB951G-2HnD...

Инкремент в цикле. Почему себя так ведет?
Есть функция, выполняющая запросы в БД. Она должна возвращать ответ в массиве. Все строки. ...

Есть блок с positioin:fixed; почему он так странно себя ведет?
Разметка: &lt;div class=&quot;one&quot;&gt; &lt;div class=&quot;two&quot;&gt;&lt;/div&gt; &lt;/div&gt; Стили:

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru