Форум программистов, компьютерный форум CyberForum.ru

Переделать функцию c указателем на int, на функцию с указателем на void - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вывести на экран геометрическую фигуру, заполняя ее символом * http://www.cyberforum.ru/cpp-beginners/thread790341.html
помогите, пожалуйста. Разработать программу, которая выводит на экран геометрическую фигуру, заполняя ее символом *. размер фигуры определяется при вводе. Заполненный равнобедренный треугольник. Основание - n, высота n/2+1 (n-нечетное) Треугольник этот повернут высотой вниз, то есть перевернут. Заранее спасибо.
C++ Вычислить значение произведения Помогите реализовать программу на с++ с использованием оператора for Нужно решить пример! p=a*(a-n)(a-2n)(a-3n)*...*(a-n*n) проще говоря число скобок зависит от числа n n=7 число скобок таких 7!!! http://www.cyberforum.ru/cpp-beginners/thread790333.html
C++ Как в программе сделать чтобы результат мог быть не целым ?
#include <iostream.h> int pop(int* first,int* last) { int sum=0; for(; first!=last; ++first) sum+= *first; return sum; } int main()
Найти среднее арифметическое наибольшего и наименьшего значений в двумерном массиве C++
Данная действительная матрица размера 6х9. Найти среднее арифметическое наибольшего и наименьшего значений ее элементов. Добавлено через 7 минут Данная действительная матрица размера 6х9. Найти среднее арифметическое наибольшего и наименьшего значений ее элементов. #include<iostream> #include <Windows.h> #include <time.h> using namespace std;
C++ Вывод на экран имени переменной(имени файла, и тд.) http://www.cyberforum.ru/cpp-beginners/thread790303.html
Здрасти. Недалече столкнулся с проблемой: надо сравнить два файла по признаку количества содержащихся в них символов и вернуть тот что содержит наименьшее кол-во. Моя функция вовращать то возвращает. Но вот как в дальнейшем использовать имя возвращаемого файла для вывода на экран (произвести не вывод содержимого файла, а именно его ИМЯ). Может есть какая нибудь хитрая функция которая получает в...
C++ Передача двумерного массива в функцию по ссылке Требуется написать функцию, которая выделяет память для одномерного и двумерного динамического массива. Для первого варианта вопросов вроде бы нет. Не получается сделать для двумерного. Помогите поправить программу #include <iostream> #include <iomanip> using namespace std; inline void init (double &arr, int arr_len); inline void init (double &arr_A, int arr_len1, int arr_len2); подробнее

Показать сообщение отдельно
xtorne21st
интересующийся
303 / 274 / 19
Регистрация: 25.09.2010
Сообщений: 1,056
20.02.2013, 22:33  [ТС]     Переделать функцию c указателем на int, на функцию с указателем на void
Да решается, но вопрос не в этом

Добавлено через 13 минут
Вот ктати есть рабочий пример с Пузырьковой сортировкой:
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
#include <iostream>
 
typedef int (*PTF)(const void*, const void*);
 
// base указатель на массив, n - количество элементов,
// sz - размер типа, cmp - компаранда.
void bsort(void* base, size_t n, size_t sz, PTF cmp)
{
    for (int i = 1; i < int(n); ++i)
        for (int j = n-1; j >= i; --j) {
            char* b = static_cast<char*>(base); // приведение к char 
            char* jl = b + (j*sz);
            char* jr = b + (j-1)*sz;
            if (cmp(jr, jl) > 0)
            {
                // побайтовое перемещение
                for (int k = 0; k < int(sz); ++k)
                {
                    char temp = jl[k];
                    jl[k] = jr[k];
                    jr[k] = temp;
                }
            }
        }
}
 
int int_cmp(const void* i, const void* j)
{
    return *static_cast<const int*>(i) - 
        *static_cast<const int*>(j);
}
int double_cmp(const void* i, const void* j)
{
    return *static_cast<const double*>(i) -
        *static_cast<const double*>(j);
}
 
int main()
{
    const int SIZE = 10;
    int int_arr[SIZE] = {4, 6,-3, 17, 22, 45, -476, 8, 3, -46};
    double double_arr[SIZE] = {56.34, -4565.236, 45454.666, -56.9, 77.01, 0.1, 12.4, 45.8, -11.6, 104.3};
 
    bsort(int_arr, SIZE, sizeof(int), int_cmp);
    bsort(double_arr, SIZE, sizeof(double), double_cmp);
 
    for (int i = 0; i < SIZE; ++i)
        std::cout << int_arr[i] << "  ";
    std::cout << '\n';
    
    for (int i = 0; i < SIZE; ++i)
        std::cout << double_arr[i] << "  ";
    std::cout << '\n';
 
    return 0;
}
Добавлено через 17 часов 37 минут
Ребята, помогите, ведь осталось совсем не много

Добавлено через 6 часов 44 минуты
Добрые люди, я запутался в адресной арифметике, нужна ваша помощь!
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru