Not certain about your question -- can a function declared in one file call a function in another file? Yes, the program has two or more files they all must be linked together into one executable program. How to do that depends on the compiler you are using because every compiler is a little different.
What compiler and operating system?
Ancient Dragon
Retired & Loving It
30,049 posts since Aug 2005
Reputation Points: 5,662
Solved Threads: 2,343
>>Can I control this by putting some kind of attibute or pragma to define a section for that particular function (ten)?
I never heard if a section, there is no such thing in standard C language.
Ancient Dragon
Retired & Loving It
30,049 posts since Aug 2005
Reputation Points: 5,662
Solved Threads: 2,343
~s.o.s~
Failure as a human
11,938 posts since Jun 2006
Reputation Points: 3,281
Solved Threads: 734
> I want function called void ten (void); to go into c particular memory range.
You can, but why would you want to?
Both your operating systems are perfectly capable of running the code at the default address the linker gives to the function. If you move it too far, it might be outside of the address space the OS gives to user programs.
The question is very heavily dependent on the capabilities of your linker. I know "in principle" how to do this with the GNU linker, but only by studying the manual at length.
Manually locating bits of code is something I've only ever had to do for embedded systems where some code has to be placed in FLASH memory for example, and other code is loaded and run from RAM.
Salem
Posting Sage
11,531 posts since Dec 2005
Reputation Points: 5,862
Solved Threads: 953