CAN WE DEFINE ANY FUNCTION WITHIN A FUNCTION.
Answers were Sorted based on User's Feedback
Answer / vignesh1988i
no we cant define a function within a function.... but calling of function within a function is possible........
thank u
| Is This Answer Correct ? | 66 Yes | 10 No |
Answer / prof.gagandeep jagdev
No, it is not possible to define any function within a
function. However we can call a function from within
another function.
| Is This Answer Correct ? | 30 Yes | 4 No |
Answer / aparna
no....we cant define a function with in another
fn......Insteadwe can declare a function..
ex:
void main()
{
int fun(int); // this is declaration
fun(3); // this is fn. calling
}
int fun(int a) //this is fn.definition
{
}
| Is This Answer Correct ? | 22 Yes | 2 No |
Answer / shailender
We can do nesting of functions. I tried in GCC.
check this keyword auto does the magic.
int main()
{
func1();
}
func1()
{
int i = 0;
auto func2()
{
i = 10;
printf("Heloo i am func 2\n");
}
printf("Heloo i am func 1\n");
}
However it seems to me that there is no use of doing this
if you want to call func2 you can't do it from out side func1.
| Is This Answer Correct ? | 12 Yes | 2 No |
Answer / chandan patel
absolutely no......
u can't do this....u can only declared and call a function
inside a function....
i m appealing to those people who r saying 'yes' that please
don't misguide other....if u don't know correct stuff.
| Is This Answer Correct ? | 10 Yes | 3 No |
Answer / blaaze
hey guys pls dont misguide......
the correct ans is "no" , we cant define a function within another.
| Is This Answer Correct ? | 8 Yes | 2 No |
Answer / vinod kumari
No, we can not define a function within another function.
we can only declare and call any function in any other
function.
| Is This Answer Correct ? | 8 Yes | 2 No |
Answer / nimish salve
yes it is possible to define a function inside function.but only in optimized compiler like GCC,DEV C and not in turbo c,visual c++.
try this code
#include<stdio.h>
void fun1(void)//function definition 1
{
printf("Inside fun1\n");
void fun2(void)//function definition for 2nd function
{
printf("Inside fun2\n");
}
fun2();//function call
}
int main()
{
printf("Inside Main\n");
fun1();//function call
return 0;
}
try in both GCC and TurboC and get your answer
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / shiva
No.
in g++ you will be clearly notified that you can't define a
function inside another function
but gcc somehow allows following
#include <stdio.h>
int func2(int (*f)()){
(*f)();
return 0;
}
int main ()
{
int func1 ()
{
printf ("\n Inside func 1 ");
return 0;
}
printf("someting");
func1 (); //you can access this fuction inside
main(the function in which you declared func1) with the name
func1
func2(func1); // to access this function outside use
fucntion pointer as a argument
return 0;
}
o/p:
something
Inside func 1
Inside func 1
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / shivang
No we cannot define any function within any function.Even
though i read it in book by yeshwant kanetkar,i also tested
it, my program generated an error while doing so.
| Is This Answer Correct ? | 2 Yes | 1 No |
Write the following function in C. stripos — Find position of first occurrence of a case- insensitive string int stripos ( char* haystack, char* needle, int offset ) Returns the numeric position of the first occurrence of needle in the haystack string. Note that the needle may be a string of one or more characters. If needle is not found, stripos() will return - 1. The function should not make use of any C library function calls.
3 Answers Google, Infosys, JTL, OpenFeel,
What do you mean by a sequential access file?
what is the advantage of function pointer
16 Answers CMC, CS, Freshdesk, L&T, LG Soft, Matrix, TCS,
Magic square
15.what is the disadvantage of using macros? 16.what is the self-referential structure? 17.can a union be self-referenced? 18.What is a pointer? 19.What is the Lvalue and Rvalue? 20.what is the difference between these initializations? 21.Char a[]=”string”; 22.Char *p=”literal”; 23.Does *p++ increment p, or what it points to?
main() {int i=5; // line 1 i=(++i)/(i++); // line 2 printf("%d",i); // line 3 } output is 2 but if we replace line 2 and line 3 by printf("%d",i=(++i)/(i++)); then output is 1. Why?
What is the output of below code? main() { static int a=5; printf("%3d",a--); if(a) main(); }
List at least 10 sorting methods indicating their average case complexity, worst case complexity and best case complexity.
Write a program that takes three variables(a,b,c) in as separate parameters and rotates the values stored so that value a goes to b,b,to c and c to a
Who is invented by c?
How to find the digits truncation when assigning the interger variable to the character variables. like int i=500; char x = i : here we have truncation. how to find this. another ex: i =100; char x=i. here we do not have truncation.
how to execute with out main in cprogram