From 9890ea1233a1caf84782a0ab364622a8444e0519 Mon Sep 17 00:00:00 2001 From: bellard Date: Sat, 4 Oct 2003 21:25:32 +0000 Subject: [PATCH] added examples --- .cvsignore | 5 ---- ex1.c | 8 ++++++ ex2.c | 97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ex3.c | 23 +++++++++++++++ ex4.c | 25 ++++++++++++++++ ex5.c | 8 ++++++ 6 files changed, 161 insertions(+), 5 deletions(-) create mode 100755 ex1.c create mode 100644 ex2.c create mode 100644 ex3.c create mode 100755 ex4.c create mode 100644 ex5.c diff --git a/.cvsignore b/.cvsignore index f2fc2560..f45c95dd 100644 --- a/.cvsignore +++ b/.cvsignore @@ -2,8 +2,6 @@ tcc_g tcc tc2.c ex3 -ex1.c -ex2.c otcc1.c doc tc3s.c @@ -11,14 +9,11 @@ p3.c tc1.c error.c i386-gen1.c -ex4.c test.out2 test.out3 web.sh -ex3.c memdebug.c bench -ex5.c tcc-newparse.c p1.c Makefile.uClibc diff --git a/ex1.c b/ex1.c new file mode 100755 index 00000000..2dcff7d6 --- /dev/null +++ b/ex1.c @@ -0,0 +1,8 @@ +#! /usr/local/bin/tcc -run +#include + +int main() +{ + printf("Hello World\n"); + return 0; +} diff --git a/ex2.c b/ex2.c new file mode 100644 index 00000000..6368beec --- /dev/null +++ b/ex2.c @@ -0,0 +1,97 @@ +#include "tcclib.h" + +#define N 20 + +int nb_num; +int tab[N]; +int stack_ptr; +int stack_op[N]; +int stack_res[60]; +int result; + +int find(int n, int i1, int a, int b, int op) +{ + int i, j; + int c; + + if (stack_ptr >= 0) { + stack_res[3*stack_ptr] = a; + stack_op[stack_ptr] = op; + stack_res[3*stack_ptr+1] = b; + stack_res[3*stack_ptr+2] = n; + if (n == result) + return 1; + tab[i1] = n; + } + + for(i=0;i + +int fib(n) +{ + if (n <= 2) + return 1; + else + return fib(n-1) + fib(n-2); +} + +int main(int argc, char **argv) +{ + int n; + if (argc < 2) { + printf("usage: fib n\n" + "Compute nth Fibonacci number\n"); + return 1; + } + + n = atoi(argv[1]); + printf("fib(%d) = %d\n", n, fib(n, 2)); + return 0; +} diff --git a/ex4.c b/ex4.c new file mode 100755 index 00000000..3a3fed72 --- /dev/null +++ b/ex4.c @@ -0,0 +1,25 @@ +#!./tcc -run -L/usr/X11R6/lib -lX11 +#include +/* Yes, TCC can use X11 too ! */ +#include +#include + +int main(int argc, char **argv) +{ + Display *display; + Screen *screen; + + display = XOpenDisplay(""); + if (!display) { + fprintf(stderr, "Could not open X11 display\n"); + exit(1); + } + printf("X11 display opened.\n"); + screen = XScreenOfDisplay(display, 0); + printf("width = %d\nheight = %d\ndepth = %d\n", + screen->width, + screen->height, + screen->root_depth); + XCloseDisplay(display); + return 0; +} diff --git a/ex5.c b/ex5.c new file mode 100644 index 00000000..da625c50 --- /dev/null +++ b/ex5.c @@ -0,0 +1,8 @@ +#include +#include + +int main() +{ + printf("Hello World\n"); + return 0; +} -- 2.11.4.GIT