projects
/
uffi.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add minor upstream changes; conform new debian standards
[uffi.git]
/
examples
/
c-test-fns.c
diff --git
a/examples/c-test-fns.c
b/examples/c-test-fns.c
index 3ff1fde6d8ba938b6b2083cf0b6fb9a4c8970cc8..5f776b87954eb6397df13948a096158e98c8c095 100644
(file)
--- a/
examples/c-test-fns.c
+++ b/
examples/c-test-fns.c
@@
-1,58
+1,91
@@
/***************************************************************************
* FILE IDENTIFICATION
/***************************************************************************
* FILE IDENTIFICATION
- *
+ *
* Name: c-test-fns.c
* Purpose: Test functions in C for UFFI library
* Programer: Kevin M. Rosenberg
* Date Started: Mar 2002
*
* Name: c-test-fns.c
* Purpose: Test functions in C for UFFI library
* Programer: Kevin M. Rosenberg
* Date Started: Mar 2002
*
- * CVS Id: $Id
: c-test-fns.c,v 1.1 2002/03/21 02:41:30 kevin Exp
$
+ * CVS Id: $Id$
*
*
- * This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg
+ * This file, part of UFFI, is Copyright (c) 2002
-2005
by Kevin M. Rosenberg
*
*
- * UFFI users are granted the rights to distribute and use this software
- * as governed by the terms of the Lisp Lesser GNU Public License
- * (http://opensource.franz.com/preamble.html), also known as the LLGPL.
-
* These variables are correct for GCC
* you'll need to modify these for other compilers
***************************************************************************/
* These variables are correct for GCC
* you'll need to modify these for other compilers
***************************************************************************/
+#if defined(WIN32)||defined(WIN64)
+#include <windows.h>
+
+BOOL WINAPI DllEntryPoint(HINSTANCE hinstdll,
+ DWORD fdwReason,
+ LPVOID lpvReserved)
+{
+ return 1;
+}
+
+#define DLLEXPORT __declspec(dllexport)
+
+#else
+#define DLLEXPORT
+#endif
+
#include <ctype.h>
#include <stdlib.h>
#include <ctype.h>
#include <stdlib.h>
+#include <math.h>
/* Test of constant input string */
/* Test of constant input string */
+DLLEXPORT
int
int
-cs
tring
_count_upper (char* psz)
+cs_count_upper (char* psz)
{
int count = 0;
{
int count = 0;
- while (*psz) {
- if (isupper (*psz))
- ++count;
- ++psz;
- }
+
+ if (psz) {
+ while (*psz) {
+ if (isupper (*psz))
+ ++count;
+ ++psz;
+ }
+ return count;
+ } else
+ return -1;
}
/* Test of input and output of a string */
}
/* Test of input and output of a string */
+DLLEXPORT
void
void
-cs
tring
_to_upper (char* psz)
+cs_to_upper (char* psz)
{
{
- while (*psz) {
- *psz = toupper (*psz);
- ++psz;
+ if (psz) {
+ while (*psz) {
+ *psz = toupper (*psz);
+ ++psz;
+ }
}
}
/* Test of an output only string */
}
}
/* Test of an output only string */
+DLLEXPORT
void
void
-cs
tring
_make_random (int size, char* buffer)
+cs_make_random (int size, char* buffer)
{
int i;
for (i = 0; i < size; i++)
buffer[i] = 'A' + (rand() % 26);
}
{
int i;
for (i = 0; i < size; i++)
buffer[i] = 'A' + (rand() % 26);
}
-
-
+/* Test of input/output vector */
+DLLEXPORT
+void
+half_double_vector (int size, double* vec)
+{
+ int i;
+ for (i = 0; i < size; i++)
+ vec[i] /= 2.;
+}
+
+
+