diff CbC-examples/quicksort/quicksort_test.cbc @ 23:775dfe898662

add quicksort version 2.
author kent <kent@cr.ie.u-ryukyu.ac.jp>
date Wed, 14 Oct 2009 12:12:51 +0900
parents 0eb6cac880f0
children 2476ed92181e
line wrap: on
line diff
--- a/CbC-examples/quicksort/quicksort_test.cbc	Tue Oct 13 17:15:58 2009 +0900
+++ b/CbC-examples/quicksort/quicksort_test.cbc	Wed Oct 14 12:12:51 2009 +0900
@@ -5,6 +5,9 @@
 
 #include"quicksort_test.h"
 
+extern __code quicksort(int *,int,int, __code(*)(void*), void*);
+
+
 void
 random_initialize(int *v, int size, int min, int max)
 {
@@ -29,10 +32,9 @@
 }
 
 void
-starter()
+starter(int size)
 {
 	int *target;
-	int size=100;
 
 	target = (int*)malloc(sizeof(int)*size);
 	if (!target) {
@@ -42,7 +44,7 @@
 
 	random_initialize(target, size, 0, 90);
 
-	print_array(target, size);
+	//print_array(target, size);
 	goto quicksort(target, 0, size-1, exit0, (void*)target);
 
 	printf("bad region\n");
@@ -52,13 +54,17 @@
 main(int argc, char **argv)
 {
 	unsigned int seed=0;
+	int size=100;
 	int opt;
 
-	while ((opt = getopt(argc, argv, "s:")) != -1) {
+	while ((opt = getopt(argc, argv, "s:n:")) != -1) {
 		switch (opt) {
 			case 's':
 				seed = atoi(optarg);
 				break;
+			case 'n':
+				size = atoi(optarg);
+				break;
 			default:
 				fprintf(stderr, "Usage: %s [-t times] [-n sizeofarray] [-s seed]\n", argv[0]);
 				exit(1);
@@ -66,7 +72,7 @@
 	}
 
 	srandom(seed);
-	starter();
+	starter(size);
 	return 0;
 }
 
@@ -86,8 +92,8 @@
 {
 	int *v = arg;
 	int b;
-	print_array(arg, 100);
-	b = check_sort(arg, 100);
+	//print_array(arg, 100);
+	//b = check_sort(arg, 100);
 	if (b) {
 		printf("sorting successful!\n");
 		exit(-1);