浏览代码

add joseph stack

master
huangyulong 4 年前
父节点
当前提交
a3822f021f
共有 18 个文件被更改,包括 1077 次插入0 次删除
  1. 二进制
      joseph/loop_list
  2. 99
    0
      joseph/loop_list.c
  3. 24
    0
      joseph/loop_list.h
  4. 二进制
      joseph/loop_list.o
  5. 7
    0
      joseph/makefile
  6. 294
    0
      joseph/se.vpj
  7. 6
    0
      joseph/se.vpw
  8. 222
    0
      joseph/se.vpwhist
  9. 二进制
      joseph/se.vtg
  10. 7
    0
      stack/makefile
  11. 294
    0
      stack/se.vpj
  12. 6
    0
      stack/se.vpw
  13. 6
    0
      stack/se.vpwhist
  14. 二进制
      stack/se.vtg
  15. 二进制
      stack/sqstack
  16. 94
    0
      stack/sqstack.c
  17. 18
    0
      stack/sqstack.h
  18. 二进制
      stack/sqstack.o

二进制
joseph/loop_list 查看文件


+ 99
- 0
joseph/loop_list.c 查看文件

@@ -0,0 +1,99 @@
1
+/*
2
+ * @Author: your name
3
+ * @Date: 2021-06-20 17:11:37
4
+ * @LastEditTime: 2021-06-20 19:21:51
5
+ * @LastEditors: Please set LastEditors
6
+ * @Description: In User Settings Edit
7
+ * @FilePath: \slist\slist.c
8
+ */
9
+#include "loop_list.h"
10
+#include "stdlib.h"
11
+#include "stdio.h"
12
+
13
+
14
+pkt_node_t pkt_creat_joseph(void)
15
+{
16
+    pkt_node_t p, r, h;
17
+
18
+    p = (pkt_node_t)malloc(sizeof(struct pkt_node));
19
+    p->next = p;
20
+    p->data = 1;
21
+    h = p;
22
+    int n, i;
23
+loop:
24
+    printf("input a number:");
25
+    scanf("%d", &n);
26
+
27
+    if (n < 0)
28
+    {
29
+        printf("input error < 0\n");
30
+        goto loop;
31
+    }
32
+    r = h;
33
+    for (i = 2; i <= n; i++)
34
+    {
35
+        p = (pkt_node_t)malloc(sizeof(struct pkt_node));
36
+        p->data = i;
37
+        r->next = p;
38
+        r = p; /* r ponit list tail */
39
+    }
40
+    p->next = h; /* tail node ponit head node */
41
+    return h;
42
+}
43
+
44
+int pkt_show_list(pkt_node_t l)
45
+{
46
+    pkt_node_t p = l;
47
+    int i = 0;
48
+    while (p->next != l)
49
+    {
50
+        printf("l[%d] = %d\n", i, p->data);
51
+        p = p->next;
52
+        i++;
53
+    }
54
+    printf("l[%d] = %d\n", i, p->data);
55
+
56
+    return 0;
57
+}
58
+
59
+int pkt_joseph(pkt_node_t l, int k, int m)
60
+{
61
+    PKT_ASSERT(l);
62
+    pkt_node_t p = l;
63
+    while (p->next->data != k)
64
+    {
65
+        p = p->next; /* find k node prev node*/
66
+    }
67
+    printf("l[k] = %d\n", p->next->data);
68
+
69
+    pkt_node_t r = p;
70
+    pkt_node_t q;
71
+    int i;
72
+    while (r->next != r)
73
+    {
74
+        for (i = 0; i < m - 1; i++) /* find next del node prev node */
75
+        {
76
+            r = r->next; 
77
+        }
78
+        q = r->next; /* save delete node to q */
79
+        r->next = q->next;
80
+        printf("del = %d\n", q->data);
81
+        free(q); 
82
+    }
83
+
84
+    printf("del = %d\n", r->data); /* last node */
85
+    free(r); 
86
+    return 0;
87
+}
88
+
89
+int main(int argc, char **argv)
90
+{
91
+    pkt_node_t list;
92
+
93
+    list = pkt_creat_joseph();
94
+    pkt_show_list(list);   
95
+    
96
+    pkt_joseph(list, 3, 4);
97
+
98
+    return 0;
99
+}

+ 24
- 0
joseph/loop_list.h 查看文件

@@ -0,0 +1,24 @@
1
+/*
2
+ * @Author: your name
3
+ * @Date: 2021-06-20 17:11:26
4
+ * @LastEditTime: 2021-06-20 18:05:33
5
+ * @LastEditors: Please set LastEditors
6
+ * @Description: In User Settings Edit
7
+ * @FilePath: \slist\slist.h
8
+ */
9
+#ifndef _SLIST_H_
10
+#define _SLIST_H_
11
+
12
+#define PKT_ASSERT(x) {if ((x) == NULL) {printf("%s %d: assert failed!", __FUNCTION__, __LINE__); while(1);}}
13
+typedef int data_type;
14
+
15
+typedef struct pkt_node *pkt_node_t;
16
+
17
+struct pkt_node
18
+{
19
+    pkt_node_t next;
20
+    data_type data;
21
+};
22
+
23
+
24
+#endif

二进制
joseph/loop_list.o 查看文件


+ 7
- 0
joseph/makefile 查看文件

@@ -0,0 +1,7 @@
1
+CFLAGS = -Wall
2
+
3
+loop_list : loop_list.o
4
+
5
+.PHONY: clean
6
+clean:
7
+	rm loop_list.o loop_list

+ 294
- 0
joseph/se.vpj 查看文件

@@ -0,0 +1,294 @@
1
+<!DOCTYPE Project SYSTEM "http://www.slickedit.com/dtd/vse/10.0/vpj.dtd">
2
+<Project
3
+    Version="10.0"
4
+    VendorName="SlickEdit"
5
+    TemplateName="GNU C/C++"
6
+    WorkingDir="."
7
+    BuildSystem="vsbuild">
8
+    <Config
9
+        Name="Debug"
10
+        Type="gnuc"
11
+        DebugCallbackName="gdb"
12
+        Version="1"
13
+        OutputFile="%bdse.exe"
14
+        CompilerConfigName="Latest Version">
15
+        <Menu>
16
+            <Target
17
+                Name="Compile"
18
+                MenuCaption="&amp;Compile"
19
+                Dialog="_gnuc_options_form Compile"
20
+                CaptureOutputWith="ProcessBuffer"
21
+                Deletable="0"
22
+                OutputExts="*.o"
23
+                SaveOption="SaveCurrent"
24
+                RunFromDir="%rw">
25
+                <Exec CmdLine='gcc -c %xup  %defd -g -o "%bd%n%oe" %i "%f"'/>
26
+            </Target>
27
+            <Target
28
+                Name="Link"
29
+                MenuCaption="&amp;Link"
30
+                ShowOnMenu="Never"
31
+                Dialog="_gnuc_options_form Link"
32
+                CaptureOutputWith="ProcessBuffer"
33
+                Deletable="0"
34
+                SaveOption="SaveCurrent"
35
+                RunFromDir="%rw">
36
+                <Exec CmdLine='gcc %xup -g -o "%o" %f %libs'/>
37
+            </Target>
38
+            <Target
39
+                Name="Build"
40
+                MenuCaption="&amp;Build"
41
+                Dialog="_gnuc_options_form Compile"
42
+                CaptureOutputWith="ProcessBuffer"
43
+                Deletable="0"
44
+                SaveOption="SaveWorkspaceFiles"
45
+                RunFromDir="%rw">
46
+                <Exec CmdLine='"%(VSLICKBIN1)vsbuild" "%w" "%r" -t build'/>
47
+            </Target>
48
+            <Target
49
+                Name="Rebuild"
50
+                MenuCaption="&amp;Rebuild"
51
+                Dialog="_gnuc_options_form Compile"
52
+                CaptureOutputWith="ProcessBuffer"
53
+                Deletable="0"
54
+                SaveOption="SaveWorkspaceFiles"
55
+                RunFromDir="%rw">
56
+                <Exec CmdLine='"%(VSLICKBIN1)vsbuild" "%w" "%r" -t rebuild'/>
57
+            </Target>
58
+            <Target
59
+                Name="Debug"
60
+                MenuCaption="&amp;Debug"
61
+                Dialog="_gnuc_options_form Run/Debug"
62
+                BuildFirst="1"
63
+                CaptureOutputWith="ProcessBuffer"
64
+                Deletable="0"
65
+                SaveOption="SaveNone"
66
+                RunFromDir="%rw">
67
+                <Exec CmdLine='vsdebugio -prog "%o"'/>
68
+            </Target>
69
+            <Target
70
+                Name="Execute"
71
+                MenuCaption="E&amp;xecute"
72
+                Dialog="_gnuc_options_form Run/Debug"
73
+                BuildFirst="1"
74
+                CaptureOutputWith="ProcessBuffer"
75
+                Deletable="0"
76
+                SaveOption="SaveWorkspaceFiles"
77
+                RunFromDir="%rw">
78
+                <Exec CmdLine='"%o"'/>
79
+            </Target>
80
+            <Target
81
+                Name="dash"
82
+                MenuCaption="-"
83
+                Deletable="0">
84
+                <Exec/>
85
+            </Target>
86
+            <Target
87
+                Name="GNU C Options"
88
+                MenuCaption="GNU C &amp;Options..."
89
+                ShowOnMenu="HideIfNoCmdLine"
90
+                Deletable="0"
91
+                SaveOption="SaveNone">
92
+                <Exec
93
+                    CmdLine="gnucoptions"
94
+                    Type="Slick-C"/>
95
+            </Target>
96
+        </Menu>
97
+        <Rules Name="Compile">
98
+            <Rule
99
+                InputExts="*.ada"
100
+                OutputExts="*.o"
101
+                LinkObject="1">
102
+                <Exec CmdLine='gnat -g -c -o "%bd%n.o" "%f"'/>
103
+            </Rule>
104
+            <Rule
105
+                InputExts="*.adb"
106
+                OutputExts="*.o"
107
+                LinkObject="1">
108
+                <Exec CmdLine='gnat -g -c -o "%bd%n.o" "%f"'/>
109
+            </Rule>
110
+            <Rule
111
+                InputExts="*.f"
112
+                OutputExts="*.o"
113
+                LinkObject="1">
114
+                <Exec CmdLine='gfortran -c -g -o "%bd%n.o" "%f"'/>
115
+            </Rule>
116
+            <Rule
117
+                InputExts="*.f90"
118
+                OutputExts="*.o"
119
+                LinkObject="1">
120
+                <Exec CmdLine='gfortran -c -g -o "%bd%n.o" "%f"'/>
121
+            </Rule>
122
+            <Rule
123
+                InputExts="*.d"
124
+                OutputExts="*.o"
125
+                LinkObject="1">
126
+                <Exec CmdLine='gdc -c -g -o "%bd%n.o" "%f"'/>
127
+            </Rule>
128
+        </Rules>
129
+        <List Name="GNUC Options">
130
+            <Item
131
+                Name="LinkerOutputType"
132
+                Value="Executable"/>
133
+        </List>
134
+    </Config>
135
+    <Config
136
+        Name="Release"
137
+        Type="gnuc"
138
+        DebugCallbackName="gdb"
139
+        Version="1"
140
+        OutputFile="%bdse.exe"
141
+        CompilerConfigName="Latest Version">
142
+        <Menu>
143
+            <Target
144
+                Name="Compile"
145
+                MenuCaption="&amp;Compile"
146
+                Dialog="_gnuc_options_form Compile"
147
+                CaptureOutputWith="ProcessBuffer"
148
+                Deletable="0"
149
+                OutputExts="*.o"
150
+                SaveOption="SaveCurrent"
151
+                RunFromDir="%rw">
152
+                <Exec CmdLine='gcc -c %xup %defd -o "%bd%n%oe" %i "%f"'/>
153
+            </Target>
154
+            <Target
155
+                Name="Link"
156
+                MenuCaption="&amp;Link"
157
+                ShowOnMenu="Never"
158
+                Dialog="_gnuc_options_form Link"
159
+                CaptureOutputWith="ProcessBuffer"
160
+                Deletable="0"
161
+                SaveOption="SaveCurrent"
162
+                RunFromDir="%rw">
163
+                <Exec CmdLine='gcc %xup -o "%o" %f %libs'/>
164
+            </Target>
165
+            <Target
166
+                Name="Build"
167
+                MenuCaption="&amp;Build"
168
+                Dialog="_gnuc_options_form Compile"
169
+                CaptureOutputWith="ProcessBuffer"
170
+                Deletable="0"
171
+                SaveOption="SaveWorkspaceFiles"
172
+                RunFromDir="%rw">
173
+                <Exec CmdLine='"%(VSLICKBIN1)vsbuild" "%w" "%r" -t build'/>
174
+            </Target>
175
+            <Target
176
+                Name="Rebuild"
177
+                MenuCaption="&amp;Rebuild"
178
+                Dialog="_gnuc_options_form Compile"
179
+                CaptureOutputWith="ProcessBuffer"
180
+                Deletable="0"
181
+                SaveOption="SaveWorkspaceFiles"
182
+                RunFromDir="%rw">
183
+                <Exec CmdLine='"%(VSLICKBIN1)vsbuild" "%w" "%r" -t rebuild'/>
184
+            </Target>
185
+            <Target
186
+                Name="Debug"
187
+                MenuCaption="&amp;Debug"
188
+                Dialog="_gnuc_options_form Run/Debug"
189
+                BuildFirst="1"
190
+                CaptureOutputWith="ProcessBuffer"
191
+                Deletable="0"
192
+                SaveOption="SaveNone"
193
+                RunFromDir="%rw">
194
+                <Exec CmdLine='vsdebugio -prog "%o"'/>
195
+            </Target>
196
+            <Target
197
+                Name="Execute"
198
+                MenuCaption="E&amp;xecute"
199
+                Dialog="_gnuc_options_form Run/Debug"
200
+                BuildFirst="1"
201
+                CaptureOutputWith="ProcessBuffer"
202
+                Deletable="0"
203
+                SaveOption="SaveWorkspaceFiles"
204
+                RunFromDir="%rw">
205
+                <Exec CmdLine='"%o"'/>
206
+            </Target>
207
+            <Target
208
+                Name="dash"
209
+                MenuCaption="-"
210
+                Deletable="0">
211
+                <Exec/>
212
+            </Target>
213
+            <Target
214
+                Name="GNU C Options"
215
+                MenuCaption="GNU C &amp;Options..."
216
+                ShowOnMenu="HideIfNoCmdLine"
217
+                Deletable="0"
218
+                SaveOption="SaveNone">
219
+                <Exec
220
+                    CmdLine="gnucoptions"
221
+                    Type="Slick-C"/>
222
+            </Target>
223
+        </Menu>
224
+        <Rules Name="Compile">
225
+            <Rule
226
+                InputExts="*.ada"
227
+                OutputExts="*.o"
228
+                LinkObject="1">
229
+                <Exec CmdLine='gnat -O -c -o "%bd%n.o" "%f"'/>
230
+            </Rule>
231
+            <Rule
232
+                InputExts="*.adb"
233
+                OutputExts="*.o"
234
+                LinkObject="1">
235
+                <Exec CmdLine='gnat -O -c -o "%bd%n.o" "%f"'/>
236
+            </Rule>
237
+            <Rule
238
+                InputExts="*.f"
239
+                OutputExts="*.o"
240
+                LinkObject="1">
241
+                <Exec CmdLine='gfortran -O -g -o "%bd%n.o" "%f"'/>
242
+            </Rule>
243
+            <Rule
244
+                InputExts="*.f90"
245
+                OutputExts="*.o"
246
+                LinkObject="1">
247
+                <Exec CmdLine='gfortran -O -g -o "%bd%n.o" "%f"'/>
248
+            </Rule>
249
+            <Rule
250
+                InputExts="*.d"
251
+                OutputExts="*.o"
252
+                LinkObject="1">
253
+                <Exec CmdLine='gdc -c -g -o "%bd%n.o" "%f"'/>
254
+            </Rule>
255
+        </Rules>
256
+        <List Name="GNUC Options">
257
+            <Item
258
+                Name="LinkerOutputType"
259
+                Value="Executable"/>
260
+        </List>
261
+    </Config>
262
+    <Files>
263
+        <Folder
264
+            Name="Source Files"
265
+            Filters="*.c;*.C;*.cc;*.cpp;*.cp;*.cxx;*.c++;*.prg;*.pas;*.dpr;*.asm;*.s;*.bas;*.java;*.cs;*.sc;*.scala;*.e;*.cob;*.html;*.rc;*.tcl;*.py;*.pl;*.d;*.m;*.mm;*.go;*.groovy;*.gsh"
266
+            GUID="{6B3FDE78-FA03-4216-85B8-543EFAA0BE9C}">
267
+            <F N="loop_list.c"/>
268
+        </Folder>
269
+        <Folder
270
+            Name="Header Files"
271
+            Filters="*.h;*.H;*.hh;*.hpp;*.hxx;*.h++;*.inc;*.sh;*.cpy;*.if"
272
+            GUID="{EF514C62-5C71-40A7-AA1A-11EDA137B4E8}">
273
+            <F N="loop_list.h"/>
274
+        </Folder>
275
+        <Folder
276
+            Name="Resource Files"
277
+            Filters="*.ico;*.cur;*.dlg"
278
+            GUID="{411AD679-05E3-4E91-A3FF-6D9FCEA45C1D}"/>
279
+        <Folder
280
+            Name="Bitmaps"
281
+            Filters="*.bmp"
282
+            GUID="{55139E2B-B407-4CE7-8B2B-1FD202C9943E}"/>
283
+        <Folder
284
+            Name="Other Files"
285
+            Filters=""
286
+            GUID="{54F32A35-5615-41DC-B0DE-B5F40D93E74F}">
287
+            <F
288
+                N="makefile"
289
+                Type="Makefile"/>
290
+        </Folder>
291
+    </Files>
292
+    <List Name="RTE">
293
+    </List>
294
+</Project>

+ 6
- 0
joseph/se.vpw 查看文件

@@ -0,0 +1,6 @@
1
+<!DOCTYPE Workspace SYSTEM "http://www.slickedit.com/dtd/vse/10.0/vpw.dtd">
2
+<Workspace Version="10.0" VendorName="SlickEdit">
3
+    <Projects>
4
+        <Project File="se.vpj"/>
5
+    </Projects>
6
+</Workspace>

+ 222
- 0
joseph/se.vpwhist 查看文件

@@ -0,0 +1,222 @@
1
+[Global]
2
+CurrentProject=se.vpj
3
+[ProjectDates]
4
+se.vpj=20210623135315304
5
+[ActiveConfig]
6
+se.vpj=Debug
7
+[TreeExpansion2]
8
++@ se.vpj
9
+scroll:0
10
+[State]
11
+MONITOR_CONFIGS: 165
12
+MONITOR_CONFIG: 163 0 0 1920 1080
13
+SCREEN: 1920 1080 0 31 1921 1018 0 0 M 0 0 0 0 1212 946 0
14
+MDISTATE: 1
15
+AAAAAwAAAAIAAAAB2gAAAAIAMAAAAAAAAAAzAAAHfwAAA+QAAAAAAAAAAAAAB38AAAQPAAAAAuoAAADmAAAAAvsAAAACAAAAAgAAAAAAAAAB+wAAAAIAAAACAAAAAQAAAAD8AAAAWwAAAABOADIAOgA6ADoARAA6AFwAdwBpAG4AcwBoAGEAcgBlAFwAbABpAHMAdABcAGoAbwBzAGUAcABoAFwAbABvAG8AcABfAGwAaQBzAHQALgBjAQD/////AAH8AAAAWwAAAABOADMAOgA6ADoARAA6AFwAdwBpAG4AcwBoAGEAcgBlAFwAbABpAHMAdABcAGoAbwBzAGUAcABoAFwAbABvAG8AcABfAGwAaQBzAHQALgBoAAD/////AAAAAAAA
16
+FULLSCREEN_LAYOUT: 49 1 44 0 4 N 0
17
+_tbbufftabs_form F=11
18
+_tbprojects_form F=8
19
+_tbdebug_watches_form F=64
20
+_tbbaseclasses_form F=40
21
+_tbdeltasave_form F=0
22
+_tbdebug_regs_form F=64
23
+_tbFTPOpen_form F=0
24
+_tbdebug_threads_form F=64
25
+_tbclipboard_form F=44
26
+_tbopen_form F=40
27
+_tbterminal_form F=8
28
+_tbdebug_exceptions_form F=384
29
+_tbdebug_classes_form F=64
30
+_tbtagwin_form F=8
31
+_tbdebug_autovars_form F=64
32
+_tbsymbolcallers_form F=40
33
+_tbFTPClient_form F=0
34
+_tbtagrefs_form F=8
35
+_tbfind_symbol_form F=32
36
+_tbdebug_locals_form F=64
37
+_tbdebug_members_form F=64
38
+_tbdebug_memory_form F=64
39
+_tbsymbol_args_form F=8
40
+_tbdebug_stack_form F=64
41
+_tbsymbolcalls_form F=40
42
+_tbsymbol_props_form F=8
43
+_tbfilelist_form F=44
44
+_tboutputwin_form F=8
45
+_tbclass_form F=8
46
+_tbunittest_form F=0
47
+_tbfind_form F=36
48
+_tbmessages_browser_form F=8
49
+_tbannotations_browser_form F=0
50
+_tbdebug_breakpoints_form F=384
51
+_tbnotification_form F=36
52
+_tbinteractive_form F=8
53
+_tbproctree_form F=8
54
+_tbbookmarks_form F=8
55
+_tbregex_form F=40
56
+_tbslickc_stack_form F=8
57
+_tbderivedclasses_form F=40
58
+_tbshell_form F=8
59
+_tbcbrowser_form F=8
60
+_tbsearch_form F=8
61
+AAAAAwAAAAEAAAAB2gAAAAIAMAAAAAAAAAA1AAAHfwAAA+MAAAAAAAAAAAAAB38AAAQPAAAAAesAAABwAAAAAPsAAAABAAAAAQAAAAD7AAAAAQAAAAEAAAAA/AAAACkAAAAAHAA6ADoAOgBNAEQASQBBAFIARQBBAFQASQBMAEUBAAAAB4AAAQAAAADbAAAAAAAAAALbAAAAAAAAAAHbAAAAAAAAAAPbAAAAAAAAAAA=
62
+QTOOLBAR 2 0
63
+AAAA/wAAAAD9AAAAAAAAB4AAAAOvAAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAIAAAAQAFMAdABhAG4AZABhAHIAZAEAAAAA/////wAAAAAAAAAAAAAAHgBDAHUAcgByAGUAbgB0ACAAQwBvAG4AdABlAHgAdAEAAAJx/////wAAAAAAAAAA
64
+_tbstandard_form 1
65
+_tbcontext_form 1
66
+STANDARD_LAYOUT: 54 1 44 5 4 M 0
67
+_tbbufftabs_form F=11
68
+_tbprojects_form F=8
69
+_tbdebug_watches_form F=64
70
+_tbbaseclasses_form F=40
71
+_tbdeltasave_form F=0
72
+_tbdebug_regs_form F=64
73
+_tbFTPOpen_form F=0
74
+_tbdebug_threads_form F=64
75
+_tbclipboard_form F=44
76
+_tbopen_form F=40
77
+_tbterminal_form F=8
78
+_tbdebug_exceptions_form F=384
79
+_tbdebug_classes_form F=64
80
+_tbtagwin_form F=8
81
+_tbdebug_autovars_form F=64
82
+_tbsymbolcallers_form F=40
83
+_tbFTPClient_form F=0
84
+_tbtagrefs_form F=8
85
+_tbfind_symbol_form F=32
86
+_tbdebug_locals_form F=64
87
+_tbdebug_members_form F=64
88
+_tbdebug_memory_form F=64
89
+_tbsymbol_args_form F=8
90
+_tbdebug_stack_form F=64
91
+_tbsymbolcalls_form F=40
92
+_tbsymbol_props_form F=8
93
+_tbfilelist_form F=44
94
+_tboutputwin_form F=8
95
+_tbclass_form F=8
96
+_tbunittest_form F=0
97
+_tbfind_form F=36
98
+_tbmessages_browser_form F=8
99
+_tbannotations_browser_form F=0
100
+_tbdebug_breakpoints_form F=384
101
+_tbnotification_form F=36
102
+_tbinteractive_form F=8
103
+_tbproctree_form F=8
104
+_tbbookmarks_form F=8
105
+_tbregex_form F=40
106
+_tbslickc_stack_form F=8
107
+_tbderivedclasses_form F=40
108
+_tbshell_form F=8
109
+_tbcbrowser_form F=8
110
+_tbsearch_form F=8
111
+_tbproctree_form T=0
112
+_tbclass_form T=0
113
+_tbprojects_form T=0
114
+_tbopen_form T=0
115
+_tbcbrowser_form T=0
116
+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
117
+QTOOLBAR 2 0
118
+AAAA/wAAAAD9AAAAAAAAB4AAAAOyAAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAIAAAAQAFMAdABhAG4AZABhAHIAZAEAAAAA/////wAAAAAAAAAAAAAAHgBDAHUAcgByAGUAbgB0ACAAQwBvAG4AdABlAHgAdAEAAAJg/////wAAAAAAAAAA
119
+_tbstandard_form 1
120
+_tbcontext_form 1
121
+APP_LAYOUT: 54 1 44 5 4 M 0
122
+_tbbufftabs_form F=11
123
+_tbprojects_form F=8
124
+_tbdebug_watches_form F=64
125
+_tbbaseclasses_form F=40
126
+_tbdeltasave_form F=0
127
+_tbdebug_regs_form F=64
128
+_tbFTPOpen_form F=0
129
+_tbdebug_threads_form F=64
130
+_tbclipboard_form F=44
131
+_tbopen_form F=40
132
+_tbterminal_form F=8
133
+_tbdebug_exceptions_form F=384
134
+_tbdebug_classes_form F=64
135
+_tbtagwin_form F=8
136
+_tbdebug_autovars_form F=64
137
+_tbsymbolcallers_form F=40
138
+_tbFTPClient_form F=0
139
+_tbtagrefs_form F=8
140
+_tbfind_symbol_form F=32
141
+_tbdebug_locals_form F=64
142
+_tbdebug_members_form F=64
143
+_tbdebug_memory_form F=64
144
+_tbsymbol_args_form F=8
145
+_tbdebug_stack_form F=64
146
+_tbsymbolcalls_form F=40
147
+_tbsymbol_props_form F=8
148
+_tbfilelist_form F=44
149
+_tboutputwin_form F=8
150
+_tbclass_form F=8
151
+_tbunittest_form F=0
152
+_tbfind_form F=36
153
+_tbmessages_browser_form F=8
154
+_tbannotations_browser_form F=0
155
+_tbdebug_breakpoints_form F=384
156
+_tbnotification_form F=36
157
+_tbinteractive_form F=8
158
+_tbproctree_form F=8
159
+_tbbookmarks_form F=8
160
+_tbregex_form F=40
161
+_tbslickc_stack_form F=8
162
+_tbderivedclasses_form F=40
163
+_tbshell_form F=8
164
+_tbcbrowser_form F=8
165
+_tbsearch_form F=8
166
+_tbproctree_form T=0
167
+_tbclass_form T=0
168
+_tbprojects_form T=0
169
+_tbopen_form T=0
170
+_tbcbrowser_form T=0
171
+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
172
+QTOOLBAR 2 0
173
+AAAA/wAAAAD9AAAAAAAAB4AAAAOyAAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAIAAAAQAFMAdABhAG4AZABhAHIAZAEAAAAA/////wAAAAAAAAAAAAAAHgBDAHUAcgByAGUAbgB0ACAAQwBvAG4AdABlAHgAdAEAAAJg/////wAAAAAAAAAA
174
+_tbstandard_form 1
175
+_tbcontext_form 1
176
+END_MONITOR_CONFIGS:
177
+CWD: ..\joseph
178
+BUFFER: BN="loop_list.c"""""
179
+BI: MA=1 74 1  TABS= WWS=9 IWT= ST=8 IN=2 BW=0 US=32000 RO=0 SE=1 SN=0 BIN=0 MN=	HM=0 MF=120783424 TL=0 MLL=0 ASE=0 LNL=1 LCF=6 CAPS=0 E=0 ESBU2=-1 CL="Keywords Purple" SC="Automatic" SCE= SCU= ALM=0 FWRM=0 HMRE=0 HMRBW=0 SPCWT= SWF=2 SM= STAT=
180
+VIEW: LN=.1940 CL=38 LE=0 CX=38 CY=26 WI=5 BI=1 HT=0 HN=0 HF=0 HC=4 HB=4
181
+BUFFER: BN="loop_list.h"""""
182
+BI: MA=1 74 1  TABS= WWS=9 IWT= ST=8 IN=2 BW=0 US=32000 RO=0 SE=1 SN=0 BIN=0 MN=	HM=0 MF=117441120 TL=0 MLL=0 ASE=0 LNL=1 LCF=6 CAPS=0 E=0 ESBU2=-1 CL="Keywords Purple" SC="Automatic" SCE= SCU= ALM=0 FWRM=0 HMRE=0 HMRBW=0 SPCWT= SWF=2 SM= STAT=
183
+VIEW: LN=.0 CL=1 LE=0 CX=1 CY=0 WI=5 BI=2 HT=0 HN=0 HF=0 HC=4 HB=4
184
+WINDOW: 1 22 1210 922 0 0 N  WF=0 WT=3 ",,," DID=0 MI="*,,,"
185
+BUFFER: BN="loop_list.h"""""
186
+VIEW: LN=.0 CL=1 LE=0 CX=4 CY=0 WI=122 BI=2 HT=0 HN=0 HF=0 HC=4 HB=4
187
+WINDOW: 1 22 1210 923 0 0 N  WF=0 WT=2 ",,," DID=0 MI="*,,,"
188
+BUFFER: BN="loop_list.c"""""
189
+VIEW: LN=.1986 CL=3 LE=0 CX=7 CY=40 WI=129 BI=1 HT=0 HN=0 HF=0 HC=4 HB=4
190
+MDISTATE: 1
191
+AAAAAwAAAAIAAAAB2gAAAAIAMAAAAAAAAAAzAAAHfwAAA+QAAAAAAAAAAAAAB38AAAQPAAAAAuoAAADmAAAAAvsAAAACAAAAAgAAAAAAAAAB+wAAAAIAAAACAAAAAQAAAAD8AAAAWwAAAABOADIAOgA6ADoARAA6AFwAdwBpAG4AcwBoAGEAcgBlAFwAbABpAHMAdABcAGoAbwBzAGUAcABoAFwAbABvAG8AcABfAGwAaQBzAHQALgBjAQD/////AAH8AAAAWwAAAABOADMAOgA6ADoARAA6AFwAdwBpAG4AcwBoAGEAcgBlAFwAbABpAHMAdABcAGoAbwBzAGUAcABoAFwAbABvAG8AcABfAGwAaQBzAHQALgBoAAD/////AAAAAAAA
192
+FILEHIST: 9
193
+..\..\slist\slist.o
194
+..\..\slist\makefile
195
+..\..\slist\slist
196
+..\..\slist\slist.c
197
+..\..\looplist\makefile
198
+..\..\looplist\loop_list.h
199
+..\..\looplist\loop_list.c
200
+loop_list.h
201
+loop_list.c
202
+ALLFILEHIST: 12
203
+..\..\slist\slist.o
204
+..\..\slist\slist.h
205
+..\..\slist\slist.c
206
+..\..\slist\slist
207
+..\..\slist\makefile
208
+..\..\looplist\makefile
209
+\WorkSpace\gitea\SmartLock-v2\applications\main.c
210
+..\..\looplist\loop_list.h
211
+loop_list.h
212
+..\..\looplist\loop_list.c
213
+loop_list.c
214
+\WorkSpace\gitea\SmartLock-v2\board\board.c
215
+DEBUG: 0 0 0 0 5 0 gdb
216
+printf
217
+strcpy
218
+strcmp
219
+std::*
220
+boost::*
221
+DEBUG2: 0
222
+TBCLASS: 0 0

二进制
joseph/se.vtg 查看文件


+ 7
- 0
stack/makefile 查看文件

@@ -0,0 +1,7 @@
1
+CFLAGS = -Wall
2
+
3
+sqstack: sqstack.o
4
+
5
+.PHONY clean:
6
+clean:
7
+	rm sqstack sqstack.o

+ 294
- 0
stack/se.vpj 查看文件

@@ -0,0 +1,294 @@
1
+<!DOCTYPE Project SYSTEM "http://www.slickedit.com/dtd/vse/10.0/vpj.dtd">
2
+<Project
3
+    Version="10.0"
4
+    VendorName="SlickEdit"
5
+    TemplateName="GNU C/C++"
6
+    WorkingDir="."
7
+    BuildSystem="vsbuild">
8
+    <Config
9
+        Name="Debug"
10
+        Type="gnuc"
11
+        DebugCallbackName="gdb"
12
+        Version="1"
13
+        OutputFile="%bdse.exe"
14
+        CompilerConfigName="Latest Version">
15
+        <Menu>
16
+            <Target
17
+                Name="Compile"
18
+                MenuCaption="&amp;Compile"
19
+                Dialog="_gnuc_options_form Compile"
20
+                CaptureOutputWith="ProcessBuffer"
21
+                Deletable="0"
22
+                OutputExts="*.o"
23
+                SaveOption="SaveCurrent"
24
+                RunFromDir="%rw">
25
+                <Exec CmdLine='gcc -c %xup  %defd -g -o "%bd%n%oe" %i "%f"'/>
26
+            </Target>
27
+            <Target
28
+                Name="Link"
29
+                MenuCaption="&amp;Link"
30
+                ShowOnMenu="Never"
31
+                Dialog="_gnuc_options_form Link"
32
+                CaptureOutputWith="ProcessBuffer"
33
+                Deletable="0"
34
+                SaveOption="SaveCurrent"
35
+                RunFromDir="%rw">
36
+                <Exec CmdLine='gcc %xup -g -o "%o" %f %libs'/>
37
+            </Target>
38
+            <Target
39
+                Name="Build"
40
+                MenuCaption="&amp;Build"
41
+                Dialog="_gnuc_options_form Compile"
42
+                CaptureOutputWith="ProcessBuffer"
43
+                Deletable="0"
44
+                SaveOption="SaveWorkspaceFiles"
45
+                RunFromDir="%rw">
46
+                <Exec CmdLine='"%(VSLICKBIN1)vsbuild" "%w" "%r" -t build'/>
47
+            </Target>
48
+            <Target
49
+                Name="Rebuild"
50
+                MenuCaption="&amp;Rebuild"
51
+                Dialog="_gnuc_options_form Compile"
52
+                CaptureOutputWith="ProcessBuffer"
53
+                Deletable="0"
54
+                SaveOption="SaveWorkspaceFiles"
55
+                RunFromDir="%rw">
56
+                <Exec CmdLine='"%(VSLICKBIN1)vsbuild" "%w" "%r" -t rebuild'/>
57
+            </Target>
58
+            <Target
59
+                Name="Debug"
60
+                MenuCaption="&amp;Debug"
61
+                Dialog="_gnuc_options_form Run/Debug"
62
+                BuildFirst="1"
63
+                CaptureOutputWith="ProcessBuffer"
64
+                Deletable="0"
65
+                SaveOption="SaveNone"
66
+                RunFromDir="%rw">
67
+                <Exec CmdLine='vsdebugio -prog "%o"'/>
68
+            </Target>
69
+            <Target
70
+                Name="Execute"
71
+                MenuCaption="E&amp;xecute"
72
+                Dialog="_gnuc_options_form Run/Debug"
73
+                BuildFirst="1"
74
+                CaptureOutputWith="ProcessBuffer"
75
+                Deletable="0"
76
+                SaveOption="SaveWorkspaceFiles"
77
+                RunFromDir="%rw">
78
+                <Exec CmdLine='"%o"'/>
79
+            </Target>
80
+            <Target
81
+                Name="dash"
82
+                MenuCaption="-"
83
+                Deletable="0">
84
+                <Exec/>
85
+            </Target>
86
+            <Target
87
+                Name="GNU C Options"
88
+                MenuCaption="GNU C &amp;Options..."
89
+                ShowOnMenu="HideIfNoCmdLine"
90
+                Deletable="0"
91
+                SaveOption="SaveNone">
92
+                <Exec
93
+                    CmdLine="gnucoptions"
94
+                    Type="Slick-C"/>
95
+            </Target>
96
+        </Menu>
97
+        <Rules Name="Compile">
98
+            <Rule
99
+                InputExts="*.ada"
100
+                OutputExts="*.o"
101
+                LinkObject="1">
102
+                <Exec CmdLine='gnat -g -c -o "%bd%n.o" "%f"'/>
103
+            </Rule>
104
+            <Rule
105
+                InputExts="*.adb"
106
+                OutputExts="*.o"
107
+                LinkObject="1">
108
+                <Exec CmdLine='gnat -g -c -o "%bd%n.o" "%f"'/>
109
+            </Rule>
110
+            <Rule
111
+                InputExts="*.f"
112
+                OutputExts="*.o"
113
+                LinkObject="1">
114
+                <Exec CmdLine='gfortran -c -g -o "%bd%n.o" "%f"'/>
115
+            </Rule>
116
+            <Rule
117
+                InputExts="*.f90"
118
+                OutputExts="*.o"
119
+                LinkObject="1">
120
+                <Exec CmdLine='gfortran -c -g -o "%bd%n.o" "%f"'/>
121
+            </Rule>
122
+            <Rule
123
+                InputExts="*.d"
124
+                OutputExts="*.o"
125
+                LinkObject="1">
126
+                <Exec CmdLine='gdc -c -g -o "%bd%n.o" "%f"'/>
127
+            </Rule>
128
+        </Rules>
129
+        <List Name="GNUC Options">
130
+            <Item
131
+                Name="LinkerOutputType"
132
+                Value="Executable"/>
133
+        </List>
134
+    </Config>
135
+    <Config
136
+        Name="Release"
137
+        Type="gnuc"
138
+        DebugCallbackName="gdb"
139
+        Version="1"
140
+        OutputFile="%bdse.exe"
141
+        CompilerConfigName="Latest Version">
142
+        <Menu>
143
+            <Target
144
+                Name="Compile"
145
+                MenuCaption="&amp;Compile"
146
+                Dialog="_gnuc_options_form Compile"
147
+                CaptureOutputWith="ProcessBuffer"
148
+                Deletable="0"
149
+                OutputExts="*.o"
150
+                SaveOption="SaveCurrent"
151
+                RunFromDir="%rw">
152
+                <Exec CmdLine='gcc -c %xup %defd -o "%bd%n%oe" %i "%f"'/>
153
+            </Target>
154
+            <Target
155
+                Name="Link"
156
+                MenuCaption="&amp;Link"
157
+                ShowOnMenu="Never"
158
+                Dialog="_gnuc_options_form Link"
159
+                CaptureOutputWith="ProcessBuffer"
160
+                Deletable="0"
161
+                SaveOption="SaveCurrent"
162
+                RunFromDir="%rw">
163
+                <Exec CmdLine='gcc %xup -o "%o" %f %libs'/>
164
+            </Target>
165
+            <Target
166
+                Name="Build"
167
+                MenuCaption="&amp;Build"
168
+                Dialog="_gnuc_options_form Compile"
169
+                CaptureOutputWith="ProcessBuffer"
170
+                Deletable="0"
171
+                SaveOption="SaveWorkspaceFiles"
172
+                RunFromDir="%rw">
173
+                <Exec CmdLine='"%(VSLICKBIN1)vsbuild" "%w" "%r" -t build'/>
174
+            </Target>
175
+            <Target
176
+                Name="Rebuild"
177
+                MenuCaption="&amp;Rebuild"
178
+                Dialog="_gnuc_options_form Compile"
179
+                CaptureOutputWith="ProcessBuffer"
180
+                Deletable="0"
181
+                SaveOption="SaveWorkspaceFiles"
182
+                RunFromDir="%rw">
183
+                <Exec CmdLine='"%(VSLICKBIN1)vsbuild" "%w" "%r" -t rebuild'/>
184
+            </Target>
185
+            <Target
186
+                Name="Debug"
187
+                MenuCaption="&amp;Debug"
188
+                Dialog="_gnuc_options_form Run/Debug"
189
+                BuildFirst="1"
190
+                CaptureOutputWith="ProcessBuffer"
191
+                Deletable="0"
192
+                SaveOption="SaveNone"
193
+                RunFromDir="%rw">
194
+                <Exec CmdLine='vsdebugio -prog "%o"'/>
195
+            </Target>
196
+            <Target
197
+                Name="Execute"
198
+                MenuCaption="E&amp;xecute"
199
+                Dialog="_gnuc_options_form Run/Debug"
200
+                BuildFirst="1"
201
+                CaptureOutputWith="ProcessBuffer"
202
+                Deletable="0"
203
+                SaveOption="SaveWorkspaceFiles"
204
+                RunFromDir="%rw">
205
+                <Exec CmdLine='"%o"'/>
206
+            </Target>
207
+            <Target
208
+                Name="dash"
209
+                MenuCaption="-"
210
+                Deletable="0">
211
+                <Exec/>
212
+            </Target>
213
+            <Target
214
+                Name="GNU C Options"
215
+                MenuCaption="GNU C &amp;Options..."
216
+                ShowOnMenu="HideIfNoCmdLine"
217
+                Deletable="0"
218
+                SaveOption="SaveNone">
219
+                <Exec
220
+                    CmdLine="gnucoptions"
221
+                    Type="Slick-C"/>
222
+            </Target>
223
+        </Menu>
224
+        <Rules Name="Compile">
225
+            <Rule
226
+                InputExts="*.ada"
227
+                OutputExts="*.o"
228
+                LinkObject="1">
229
+                <Exec CmdLine='gnat -O -c -o "%bd%n.o" "%f"'/>
230
+            </Rule>
231
+            <Rule
232
+                InputExts="*.adb"
233
+                OutputExts="*.o"
234
+                LinkObject="1">
235
+                <Exec CmdLine='gnat -O -c -o "%bd%n.o" "%f"'/>
236
+            </Rule>
237
+            <Rule
238
+                InputExts="*.f"
239
+                OutputExts="*.o"
240
+                LinkObject="1">
241
+                <Exec CmdLine='gfortran -O -g -o "%bd%n.o" "%f"'/>
242
+            </Rule>
243
+            <Rule
244
+                InputExts="*.f90"
245
+                OutputExts="*.o"
246
+                LinkObject="1">
247
+                <Exec CmdLine='gfortran -O -g -o "%bd%n.o" "%f"'/>
248
+            </Rule>
249
+            <Rule
250
+                InputExts="*.d"
251
+                OutputExts="*.o"
252
+                LinkObject="1">
253
+                <Exec CmdLine='gdc -c -g -o "%bd%n.o" "%f"'/>
254
+            </Rule>
255
+        </Rules>
256
+        <List Name="GNUC Options">
257
+            <Item
258
+                Name="LinkerOutputType"
259
+                Value="Executable"/>
260
+        </List>
261
+    </Config>
262
+    <Files>
263
+        <Folder
264
+            Name="Source Files"
265
+            Filters="*.c;*.C;*.cc;*.cpp;*.cp;*.cxx;*.c++;*.prg;*.pas;*.dpr;*.asm;*.s;*.bas;*.java;*.cs;*.sc;*.scala;*.e;*.cob;*.html;*.rc;*.tcl;*.py;*.pl;*.d;*.m;*.mm;*.go;*.groovy;*.gsh"
266
+            GUID="{F2DDBD21-2907-4AC1-8E21-43DF92EF501C}">
267
+            <F N="sqstack.c"/>
268
+        </Folder>
269
+        <Folder
270
+            Name="Header Files"
271
+            Filters="*.h;*.H;*.hh;*.hpp;*.hxx;*.h++;*.inc;*.sh;*.cpy;*.if"
272
+            GUID="{37DC804C-80DB-4C54-841C-A28EA5ECEA0E}">
273
+            <F N="sqstack.h"/>
274
+        </Folder>
275
+        <Folder
276
+            Name="Resource Files"
277
+            Filters="*.ico;*.cur;*.dlg"
278
+            GUID="{5FAFD04A-6FF9-42CA-BAC7-F94D13D3FCF0}"/>
279
+        <Folder
280
+            Name="Bitmaps"
281
+            Filters="*.bmp"
282
+            GUID="{C19C5EAD-EB2C-4F71-9D63-8FFE80DB5540}"/>
283
+        <Folder
284
+            Name="Other Files"
285
+            Filters=""
286
+            GUID="{1B5AD00D-3FF9-43DD-8ED2-67DDE3FD25F7}">
287
+            <F
288
+                N="makefile"
289
+                Type="Makefile"/>
290
+        </Folder>
291
+    </Files>
292
+    <List Name="RTE">
293
+    </List>
294
+</Project>

+ 6
- 0
stack/se.vpw 查看文件

@@ -0,0 +1,6 @@
1
+<!DOCTYPE Workspace SYSTEM "http://www.slickedit.com/dtd/vse/10.0/vpw.dtd">
2
+<Workspace Version="10.0" VendorName="SlickEdit">
3
+    <Projects>
4
+        <Project File="se.vpj"/>
5
+    </Projects>
6
+</Workspace>

+ 6
- 0
stack/se.vpwhist 查看文件

@@ -0,0 +1,6 @@
1
+[Global]
2
+CurrentProject=se.vpj
3
+[ProjectDates]
4
+se.vpj=20210624060356129
5
+[ActiveConfig]
6
+se.vpj=Debug

二进制
stack/se.vtg 查看文件


二进制
stack/sqstack 查看文件


+ 94
- 0
stack/sqstack.c 查看文件

@@ -0,0 +1,94 @@
1
+#include <stdio.h>
2
+#include <stdlib.h>
3
+#include "sqstack.h"
4
+
5
+sqstack_t pkt_creat_sqstack(int len)
6
+{
7
+    sqstack_t s;
8
+    if((s = (sqstack_t)malloc(sizeof(struct sqstack))) == NULL)
9
+    {
10
+        printf("malloc failed!\n");
11
+        return NULL;
12
+    }
13
+
14
+    if((s->frame = (stack_frame_t)malloc(sizeof(struct stack_frame) * len)) == NULL)
15
+    {
16
+        printf("malloc failed!\n");
17
+        return NULL;
18
+    }
19
+
20
+    s->max_len = len;
21
+    s->top = -1;
22
+    return s;
23
+}
24
+
25
+int pkt_sqstack_empty(sqstack_t s)
26
+{
27
+    return s->top == -1 ? 1 : 0;
28
+}
29
+
30
+int pkt_sqstack_full(sqstack_t s)
31
+{
32
+    return  s->top == (s->max_len - 1) ? 1 : 0;
33
+}
34
+
35
+void pkt_clear_sqstack(sqstack_t s)
36
+{
37
+    s->top = -1;
38
+}
39
+
40
+stack_frame_t pkt_sqstack_pop(sqstack_t s)
41
+{
42
+    if(pkt_sqstack_empty(s))
43
+    {
44
+        printf("sqstack is empty!\n");
45
+        return NULL;
46
+    }
47
+
48
+    s->top--;
49
+    return &s->frame[s->top + 1];
50
+}
51
+
52
+int pkt_sqstack_push(sqstack_t s, struct stack_frame frame)
53
+{
54
+    if(pkt_sqstack_full(s))
55
+    {
56
+        printf("sqstack is full!\n");
57
+        return -1;
58
+    }
59
+
60
+    s->frame[s->top + 1] = frame;
61
+    s->top++;
62
+    return 0;
63
+}
64
+
65
+stack_frame_t pkt_get_sqstack_top(sqstack_t s)
66
+{
67
+    return &s->frame[s->top];
68
+}
69
+
70
+void pkt_sqstack_free(sqstack_t s)
71
+{
72
+    free(s->frame);
73
+    free(s);
74
+}
75
+
76
+int main(void)
77
+{
78
+    sqstack_t s = pkt_creat_sqstack(10);
79
+    struct stack_frame frame;
80
+
81
+    for(int i = 1; i <= 10; i++)
82
+    {
83
+        frame.data = i;
84
+        pkt_sqstack_push(s, frame);
85
+    }
86
+
87
+    while(!pkt_sqstack_empty(s))
88
+    {
89
+        printf("%d\n", pkt_sqstack_pop(s)->data);
90
+    }
91
+
92
+    return 0;
93
+}
94
+

+ 18
- 0
stack/sqstack.h 查看文件

@@ -0,0 +1,18 @@
1
+#ifndef _SQSTACK_H_
2
+#define _SQSTACK_H_
3
+
4
+struct stack_frame
5
+{
6
+    int data;
7
+};
8
+typedef struct stack_frame * stack_frame_t;
9
+
10
+struct sqstack
11
+{
12
+    stack_frame_t frame;
13
+    int max_len;
14
+    int top;
15
+};
16
+typedef struct sqstack *sqstack_t;
17
+
18
+#endif

二进制
stack/sqstack.o 查看文件


正在加载...
取消
保存