To the best of my knowledge, you always have to tell C functions something about their parameters. Taking your example: the function execute should take an arbitrary number of arguments of unknown type, right? So lets say you pass along
an int*: is it a pointer to an integer, or just the start of an integer array? If it's the later, how should it know how far to count?
an int: is it a number, an address, or the starting address of an array? If it's an address, what's there? A char/long/double?
As you've said, you've got a number and a list of parameters. Is the number the number of parameters in the list? If so, just use the va_* macros for a function:
Code:
void execute (int numParam, ...);
or even better
Code:
void execute (int numParam, type* params);
If that doesn't suit you, could you give an better example of what you need?
Hi, Can anyone help me figure out the problem I'm having with a function call?
I have a header file, which sets an enum:
typedef enum {INFO, WARNING, FATAL} Levels;
int log_event (Levels, char *fmt, ...);
..then the function is called this way:
log_event(INFO, "Message text");
... (6 Replies)
I have a function check_ok in my abc.sh. which return me 1 or 0 . I want to call this fuction through other shell script. this shell also send two parameter to calling function.
Can you please tell me how. I am very new in unix.
#!/bin/bash
date_equal()
{
sqlplus -silent... (4 Replies)
hello,
when i call function inside awk traitement it doesn't work, i don't have error execution but i don't get result and if i call the function outside awk traitement it work well..
there's something special in awk call function??
here is the example :
awk -F "," '{ {first=$1; sec=$2;... (3 Replies)
Hello,
I have a problem with package and name space.
require "/Mehran/DSGateEngineLib/general.pl";
use strict;
sub System_Status_Main_Service_Status_Intrusion_Prevention
{
my %idpstatus;
my @result;
&General_ReadHash("/var/dsg/idp/settings",\%idpstatus);
#print... (4 Replies)
Hi foiks
i am unable to find what is wrong in my code
mu functionality is to exit from shell when i give 99 but it is not calling function ext
Could you please correct me.
read option
if ;
then
ext
else
echo "out"
fi
function ext
{
echo "tested 99 and exit... (12 Replies)
Below is my script that is function properly per my conditions but I am facing one problem here that is when one function fails then Iy should not check other functions but it calls the other function too So anyone can help me how could i achieve this?
iNOUT i AM GIVING TO THE... (1 Reply)
Hi all,
Does anyone know if it possible to append a parameter to a function name?
Something like the following:
function tnsrec_${SERVICE_NAME} {
code..
}
Any ideas? (6 Replies)
Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!
1. The problem statement, all variables and given/known data:
2. Relevant commands, code, scripts, algorithms:
#! /bin/ksh
v="ORG_ID"
... (2 Replies)
Discussion started by: sujitdas2104
2 Replies
LEARN ABOUT DEBIAN
array
array(3) Library Functions Manual array(3)NAME
array - The array library interface
SYNTAX
#include <array.h>
DESCRIPTION
An allocated array variable keeps track of
o a (nonzero) pointer to a dynamically allocated region of memory;
o the number of bytes allocated (always positive); and
o the number of bytes initialized (between 0 and the number of bytes allocated).
There are two other possibilities for the state of an array variable: unallocated and failed. In both cases, there is no dynamically allo-
cated region of memory.
A new array variable is normally created as a static variable:
#include "array.h"
static array x;
At this point it is unallocated. The array library provides various allocation and inspection functions.
A new array variable can also be created dynamically. It must be initialized to all-0, meaning unallocated, before it is given to any of
the array functions. It must be returned to the unallocated (or failed) state, for example with array_reset, before it is destroyed. These
rules prevent all memory leaks.
Expansion and inspection
array x;
t* p1 = array_allocate(&x,sizeof(t),pos);
t* p2 = array_get(&x,sizeof(t),pos);
t* p3 = array_start(&x);
int64 len = array_length(&x,sizeof(t));
int64 bytes = array_bytes(&x);
Truncation and deallocation
array x;
array_truncate(&x,sizeof(t),len);
array_trunc(&x);
array_reset(&x);
array_fail(&x);
Comparison
array x;
array y;
if (array_equal(&x,&y))
/* arrays are equal... */
Concatenation
array x;
array y;
array_cat(&x,&y);
array_catb(&x,"fnord",5);
array_cats(&x,"fnord");
array_cats0(&x,"fnord"); /* also append the */
array_cat0(&x); /* append */
array_cate(&x,"fnord",1,4); /* append "nor" */
ORIGINAL API DEFINITION
http://cr.yp.to/lib/array.html
SEE ALSO array_get(3), array_start(3), array_fail(3)array(3)