X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=examples%2Fc-test-fns.c;h=5f776b87954eb6397df13948a096158e98c8c095;hb=fd03f207e4c7e4bb1591e4902e31f9f032cffde6;hp=7358114f02d1f01d94ad4646e602fd362ef2a230;hpb=8030542e9c1262d11845ef19c8b6f0b441d9baa4;p=uffi.git diff --git a/examples/c-test-fns.c b/examples/c-test-fns.c index 7358114..5f776b8 100644 --- a/examples/c-test-fns.c +++ b/examples/c-test-fns.c @@ -1,24 +1,20 @@ /*************************************************************************** * FILE IDENTIFICATION - * + * * 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.3 2002/03/21 05:29:57 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 ***************************************************************************/ -#ifdef WIN32 +#if defined(WIN32)||defined(WIN64) #include BOOL WINAPI DllEntryPoint(HINSTANCE hinstdll, @@ -27,7 +23,7 @@ BOOL WINAPI DllEntryPoint(HINSTANCE hinstdll, { return 1; } - + #define DLLEXPORT __declspec(dllexport) #else @@ -36,6 +32,8 @@ BOOL WINAPI DllEntryPoint(HINSTANCE hinstdll, #include #include +#include + /* Test of constant input string */ DLLEXPORT @@ -47,11 +45,11 @@ cs_count_upper (char* psz) if (psz) { while (*psz) { if (isupper (*psz)) - ++count; + ++count; ++psz; } return count; - } else + } else return -1; } @@ -78,6 +76,16 @@ cs_make_random (int size, char* buffer) 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.; +} + + +