Sponsored Content
Top Forums UNIX for Dummies Questions & Answers difficult problem with function declaration Post 302482542 by garag11 on Tuesday 21st of December 2010 10:47:17 PM
Old 12-21-2010
difficult problem with function declaration

Hello,
I have a problem with the declaration of a function.
This is how I declare the function :

c:63: void foo(threadpool *tp,void (*func)(void*), (void*)arg);

Inside main, I call it like this:

main(){
..........
threadpool y;
c:104: foo(y,foo2,(void*)x);

}

and here is the foo2,and foo:
c:109:void foo(threadpool *tp,void (*func)(void*), (void*)arg){.........}
c:110: void * foo2(void *arg) {......}

gcc gives me those things:

c:63: error: expected declaration specifiers or ‘...’ before ‘(’ token
c:104: warning: passing argument 2 of ‘foo’ from incompatible pointer type
c:63: note: expected ‘void (*)(void *)’ but argument is of type ‘void * (*)(void *)’
c:104: error: too many arguments to function ‘foo’
c:110: error: expected declaration specifiers or ‘...’ before ‘(’ token
c:110: error: expected identifier or ‘(’ before ‘{’ token


I dont know what the problem is,even if I tried a lot of things.Please help!
thanks in advance
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Difficult Filtering Problem

Sir, I have a file containing say 1000 lines that contain 100 paragraphs of 10 lines each separated by blank lines.I have to match a pattern or a string "hdfhasdjkasdhs" and print the complete paragraphs containing these strings.I can do this with the help of line editor ex,but how can I use... (1 Reply)
Discussion started by: Piyush
1 Replies

2. Programming

gcc warnings: implicit declaration of function...

I am having strange warnings from gcc compiler, which I don't think should come while cmpiling. Can anyone help? The warnings are: - warning: implicit declaration of function 'bzero' - warning: implicit declaration of function 'inet_addr' The code is as below: int main(int argc, char... (2 Replies)
Discussion started by: Ahsan
2 Replies

3. UNIX for Advanced & Expert Users

difficult sed command

Im trying to replace every line line1 line2 line3 with: line1 extraline1 line2 extraline2 line3 extraline3 with about 10 extra lines I am able to add axtra lines with: (17 Replies)
Discussion started by: Dave724001
17 Replies

4. Shell Programming and Scripting

A difficult script (for me)

Hi, I'm a beginners, this is one of my first script, it's easy, but I don't know how to write this script: The script receive in input 4 parameters: 1) user_name 2) r and/or w and/or x ( rwx, rw, x, ....) 3) u and/or g and/or o ( u, uo, ugo, ...) 4) the path name The script print a... (2 Replies)
Discussion started by: DNAx86
2 Replies

5. Programming

implicit declaration of function 'reboot'

Hi, I'm tying to use the following function to reboot the system as part of my code #include <unistd.h> #include <linux/reboot.h> int restart(unsigned int delay) { sleep(delay); return reboot(LINUX_REBOOT_CMD_RESTART); } When I try to compile the code I get the warning in the... (2 Replies)
Discussion started by: galapogos
2 Replies

6. UNIX for Dummies Questions & Answers

Array declaration problem

Hi all, I would like to declare a vector of variables and access them sequentially. Here is my code ARRAY_CT="0001000000 0000100000 0000010000" ELEMENTS_CT=${#ARRAY_CT} echo $ELEMENTS_CT for (( j=1;j<=$ELEMENTS_IS;j++)); do echo ${ARRAY_IS} done ... (2 Replies)
Discussion started by: f_o_555
2 Replies

7. Shell Programming and Scripting

Difficult problem: Complex text file manipulation in bash script.

I don't know if this is a big issue or not, but I'm having difficulties. I apoligize for the upcoming essay :o. I'm writing a script, similar to a paint program that edits images, but in the form of ANSI block characters. The program so far is working. I managed to save the image into a file,... (14 Replies)
Discussion started by: tinman47
14 Replies

8. Programming

Difficult in analyzing an algorithm

Hello, I was reading Heuritics text and came across an algorithm below. Finding hard to analyze it can any one help me out below... How to analyze if I take say no. of types are 5 and each type has say 20 coins. thanks. Let {c1, c2...cn=1} be a set of distinct coin types where ci is... (1 Reply)
Discussion started by: sureshcisco
1 Replies

9. Shell Programming and Scripting

Function prototype declaration

Hi All, I have the script as below #!bin/bash let k=9 if then echo "Start" Hello echo "End" else echo "failed" fi function Hello() { echo "hello !!!!" } I got the below error : (4 Replies)
Discussion started by: Balasankar
4 Replies

10. Linux

A little difficult: investigate Xenix and slattach problem

I know Xenix is a little outdated, and is dangerous to use on network. But this is a virtual machine, and I like to play retrocomputing sometime. The question is..why ftp over slip doesn't work? I've set this Xenix vm on libvirt <domain type='kvm' id='5'... (2 Replies)
Discussion started by: Linusolaradm1
2 Replies
CPU_LWP_FORK(9) 					   BSD Kernel Developer's Manual					   CPU_LWP_FORK(9)

NAME
cpu_lwp_fork, child_return, proc_trampoline -- finish a fork operation SYNOPSIS
#include <sys/proc.h> void cpu_lwp_fork(struct lwp *l1, struct lwp *l2, void *stack, size_t stacksize, void (*func)(void *), void *arg); void child_return(void *arg); DESCRIPTION
cpu_lwp_fork() is the machine-dependent portion of fork1() which finishes a fork operation, with child lwp l2 nearly set up. It copies and updates the PCB and trap frame from the parent l1, making the child ready to run. cpu_lwp_fork() rigs the child's kernel stack so that it will start in proc_trampoline(). proc_trampoline() does not have a normal calling sequence and is entered by cpu_switch(). If an alternate user-level stack is requested (with non-zero values in both the stack and stacksize arguments), the user stack pointer is set up accordingly. After being entered by cpu_switch() and while running in user context (within the kernel) proc_trampoline() will invoke the function func with the argument arg. If a kernel thread is being created, the return path and argument are specified with func and arg. If a user process is being created, fork1() will pass child_return() and l2 to cpu_lwp_fork() as func and arg respectively. This causes the newly-created child process to go directly to user level with an apparent return value of 0 from fork(2), while the parent process returns normally. SEE ALSO
fork(2), cpu_switchto(9), fork1(9) BSD
April 13, 2010 BSD
All times are GMT -4. The time now is 10:34 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy