1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
/*
-- CXB30130.C
--
-- Grant of Unlimited Rights
--
-- Under contracts F33600-87-D-0337, F33600-84-D-0280, MDA903-79-C-0687,
-- F08630-91-C-0015, and DCA100-97-D-0025, the U.S. Government obtained
-- unlimited rights in the software and documentation contained herein.
-- Unlimited rights are defined in DFAR 252.227-7013(a)(19). By making
-- this public release, the Government intends to confer upon all
-- recipients unlimited rights equal to those held by the Government.
-- These rights include rights to use, duplicate, release or disclose the
-- released technical data and computer software in whole or in part, in
-- any manner and for any purpose whatsoever, and to have or permit others
-- to do so.
--
-- DISCLAIMER
--
-- ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR
-- DISCLOSED ARE AS IS. THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED
-- WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE
-- SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE
-- OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A
-- PARTICULAR PURPOSE OF SAID MATERIAL.
--*
--
-- FUNCTION NAME: CXB30130 ("square_it")
--
-- FUNCTION DESCRIPTION:
-- This C function returns the square of num1 through the function
-- name, and returns the square of parameters num2, num3, and num4
-- through the argument list (modifying the objects pointed to by
-- the parameters).
--
-- INPUTS:
-- This function requires that four parameters be passed to it.
-- The types of these parameters are, in order: int, pointer to short,
-- pointer to float, and pointer to double.
--
-- PROCESSING:
-- The function will calculate the square of the int parameter (num1),
-- and return this value as the function result through the function
-- name. The function will also calculate the square of the values
-- pointed to by the remaining three parameters (num2, num3, num4),
-- and will modify the referenced memory locations to contain the
-- squared values.
--
-- OUTPUTS:
-- The square of num1 is returned through function name.
-- Parameters num2-num4 now point to values that are the squared results
-- of the originally referenced values (i.e., the original values are
-- modified as a result of this function).
--
-- CHANGE HISTORY:
-- 12 Oct 95 SAIC Initial prerelease version.
--
--!
*/
int CXB30130 (int num1, short* num2, float* num3, double* num4)
/* NOTE: The above function definition should be accepted by an ANSI-C */
/* compiler. Older C compilers may reject it; they may, however */
/* accept the following five lines. An implementation may comment */
/* out the above function definition and uncomment the following */
/* one. Otherwise, an implementation must provide the necessary */
/* modifications to this C code to satisfy the function */
/* requirements (see Function Description). */
/* */
/* int CXB30130 (num1, num2, num3, num4) */
/* int num1; */
/* short* num2; */
/* float* num3; */
/* double* num4; */
/* */
{
int return_value = 0;
return_value = num1 * num1;
*num2 = *num2 * *num2; /* Return square of these parameters through */
*num3 = *num3 * *num3; /* the parameter list. */
*num4 = *num4 * *num4;
return (return_value); /* Return square of num1 through function name */
}
|