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

Структура, нужно даработать - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ как сделать настройщик для файла http://www.cyberforum.ru/cpp-beginners/thread185180.html
как написать программу,которая может изменять данные в скомпилированном exe? (например во многих клиент-серверных приложениях есть настройщик сервера,который изменяет порт сервера, и т.д.)
C++ Не могу разобраться с ошибкой в проге #include <iostream> #include <stdio.h> #include <conio.h> #include <ctype.h> #define C 262 #define D 294 #define E 330 #define F 349 #define G 392 #define A 440 http://www.cyberforum.ru/cpp-beginners/thread185172.html
линейные двунаправленные списки C++
Напишите функцию, которая в линейном двунаправленном списке удваивает каждое вхождение элемента E.
C++ линейные однонаправленные списки
Напишите функцию для включения данного линейного списка в "середину" другого линейного списка. Дано некоторое количество текстовых файлов, содержащих различные части некоторого послания....
C++ работа с файлами http://www.cyberforum.ru/cpp-beginners/thread185165.html
Описать функции для ввода-вывода значений массива структур из файла произвольного доступа. Создайте файл SortAllStr.out, в который запишите все результаты выполнения сортировки массива по различным...
C++ Срочно нужен исходник! Мне срочно нужен исходник ProRAT 1.9(Но именно не сам ProRAT а исходник) подробнее

Показать сообщение отдельно
fasked
Эксперт С++
4937 / 2517 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
02.11.2010, 21:06
Моя версия на Си.
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
#include <assert.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
 
#define STACK_MAX_SIZE 10
typedef int value_type;
 
typedef struct stack {
        value_type data[STACK_MAX_SIZE];
        size_t top;
} stack_t, *pstack_t;
 
stack_t create() {
        stack_t s;
        memset(&s, 0, sizeof(s));
        return s;
}
 
int empty(pstack_t sptr) {
        assert(sptr);
        return sptr->top == 0;
}
 
int full(pstack_t sptr) {
        assert(sptr);
        return sptr->top == STACK_MAX_SIZE;
}
 
int push(pstack_t sptr, value_type value) {
        assert(sptr);
        if(full(sptr)) {
                fprintf(stderr, "stack overflow\n");
                return -1;
        }
 
        sptr->data[(sptr->top)++] = value;
        return 0;
}
 
int pop(pstack_t sptr) {
        assert(sptr);
        if(empty(sptr)) {
                fprintf(stderr, "stack empty\n");
                return -1;
        }
 
        sptr->data[--(sptr->top)] = 0;
        return 0;
}
 
value_type top(pstack_t sptr) {
        assert(sptr);
        if(empty(sptr)) {
                fprintf(stderr, "stack empty\n");
                return 0;
        }
 
        return sptr->data[(sptr->top) - 1];
}
 
 
int main() {
        stack_t s = create();
 
        while(!full(&s)) {
                if(push(&s, rand() % 9) != 0)
                        exit(1);
        }
 
        while(!empty(&s)) {
                printf("%d -> ", top(&s));
                if(pop(&s) != 0)
                        exit(1);
        }
        printf("\b\b\b   \n");
 
        return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru