Sponsored Content
Top Forums Programming [ C ] multidemensional array pass to functions Post 302265304 by shamrock on Saturday 6th of December 2008 01:20:36 PM
Old 12-06-2008
Most of the source code looks alright with the exception of one statement. Dual-level pointer crc_s cannot be equated to uni-level pointer argv[i] as they are incompatible in terms of the pointer levels. crc_s is of type char** while argv[i] is of type char*.
Quote:
Originally Posted by VRoemer
Code:
int crcSpoof( char* file, char* fileOut, char* fileOutTmp, ulong* nRecovered, ulong* bytesRecovered, int** CRC_Array )

...

int main( int argc, char** argv )
{
    int i = 3; // start with the 3rd value of argv
    int** crc_s; 
    
    // Some argument testing here

    while( argv[ i ] )
       crc_s = argv[ i ]; /* the compiler will complain about this line */ 
    
    crcSpoof( argv[1], argv[2], "fileOutTmp", NULL, NULL, crc_s );

 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Pass by reference in shell functions

Hi all, In windows script, passing arguments can be done in both "call by value" and "call by reference". Refer http://www.commandline.co.uk/lib/treeview/index.php Can we have call by reference in unix too? Thanks in adavance, Sonal. (5 Replies)
Discussion started by: sonaluphale
5 Replies

2. UNIX for Dummies Questions & Answers

How To Pass an Array Variable

Hi, I have a master BASH shell script where I define a bunch of variables: $var1=why $var2=is $var3=(this so hard) I would then like to call another shell script and pass these variables to it: $script2 $var1 $var2 $var3 This works fine for var1 and var2. However, var3 is an array,... (9 Replies)
Discussion started by: msb65
9 Replies

3. Shell Programming and Scripting

Tricky array substitution in functions

Hello, Please tell me if there is a better way to get the number of elements from an array that is passed to a function. This is what works on Solaris 8 (ksh) but it looks odd: loop_array() { array_name=$2 b1='\${\#' b2='}' nr_elements=`eval echo... (6 Replies)
Discussion started by: majormark
6 Replies

4. UNIX for Dummies Questions & Answers

How to pass array as an arguement ?

Hi experts, I am here again with another Issue. I need to pass the array as parameter / argument to another script. I tried it as follows . ( I got this idea from the link ) $ cat test1.sh #! /usr/bin/ksh set -a arr1 echo "...In Test1...." arr1="APPS_DEV" arr1="TEST_DEV" echo... (16 Replies)
Discussion started by: rajavu
16 Replies

5. Shell Programming and Scripting

Passing array to functions in ksh script

Let me know if there is a way to pass array to a funtion in ksh script. function isPresent { typeset member member=$1 dbList=$2 echo '$1:' $1 echo '$2' $dbList The array will be at the second position....something like this isPresent 12 <array> if then echo... (3 Replies)
Discussion started by: prasperl
3 Replies

6. Shell Programming and Scripting

Pass parameters to a function and running functions in parallel

Hi , I have a script which is using a text file as I/P. I want a code where it reads n lines from this file and pass the parameters to a function and now this script should run in such a way where a function can be called in parallel with different parameters. Please find below my script, it... (1 Reply)
Discussion started by: Ravindra Swan
1 Replies

7. Shell Programming and Scripting

Need help on Assigning a Array variable from Background Functions

I have a question on how can I assign a output of a function to a variable which is executed in background. Here is my example $ cat sample_program.sh #!/bin/ksh exec_func () { sleep 1 v=`expr $1 + 100` print $v } export OUT_ARR date for i in 1 2 do OUT_ARR=`exec_func $i` &... (1 Reply)
Discussion started by: mohan_kumarcs
1 Replies

8. Shell Programming and Scripting

Pass array to a function and display the array

Hi All I have multiple arrays like below. set -A val1 1 2 4 5 set -A val2 a b c d . . . Now i would like to pass the individual arrays one by one to a function and display/ do some action. Note : I am using ksh Can you please advise any solution... Thanks in advance. (7 Replies)
Discussion started by: Girish19
7 Replies

9. UNIX for Dummies Questions & Answers

How to pass first array value?

Hi, I am creating filesystem for block device, but I want to pass array value one by one acording to block device count. $tmp1 = block device count 3 $blockdevice = So I want to first pass sdb1 alone in loop, how to take only block device seprately from $blockdevice array. (1 Reply)
Discussion started by: stew
1 Replies

10. Programming

Code review: recursion in circular array, reduce two functions to one?

Hello, I think there's an easier way to do this but can't seem to recall but given an array of animals and an initial value is a random index in the array, here it's 3. 3,4,5,4,3,2,1,0,1,2,3,4,5,4,3,2,1,0... inifinite repeat a quick brute force solution i came up with was two functions, i... (6 Replies)
Discussion started by: f77hack
6 Replies
isaexec(3C)						   Standard C Library Functions 					       isaexec(3C)

NAME
isaexec - invoke isa-specific executable SYNOPSIS
#include <unistd.h> int isaexec(const char *path, char *const argv[], char *const envp[]); DESCRIPTION
The isaexec() function takes the path specified as path and breaks it into directory and file name components. It enquires from the running system the list of supported instruction set architectures; see isalist(5). The function traverses the list for an executable file in named subdirectories of the original directory. When such a file is located, execve() is invoked with argv[] and envp[]. See exec(2). RETURN VALUES
If no file is located, isaexec() returns ENOENT. Other return values are the same as for execve(). EXAMPLES
Example 1: Example of isaexec() function. On a system whose isalist is sparcv7 sparc the program int main(int argc, char *argv[], char *envp[]) { return (isaexec("/bin/thing", argv, envp)); } will look first for an executable file named /bin/sparcv7/thing, then for an executable file named /bin/sparc/thing. It will invoke execve() on the first executable file it finds named thing. On that same system, a program called /u/bin/tofu can cause either /u/bin/sparcv7/tofu or /u/bin/sparc/tofu to be invoked using the follow- ing code: int main(int argc, char *argv[], char *envp[]) { return (isaexec(getexecname(), argv, envp)); } ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |MT-Level |Safe | +-----------------------------+-----------------------------+ |Interface Stability |Stable | +-----------------------------+-----------------------------+ SEE ALSO
exec(2), getexecname(3C), attributes(5), isalist(5) SunOS 5.10 20 Mar 1998 isaexec(3C)
All times are GMT -4. The time now is 02:33 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy