main() function is mandatory for any C program. Because, the program execution starts from main(). Default return type for main function is an integer. Return value from main function could help us to find the exit status of a C program.
Consider the following example,
Consider the following example,
#include <stdio.h> int main() { int val; printf("Enter an integer: "); scanf("%d", &val); if (val < 0) { printf("%d is negative\n", val); return (-1); } else { printf("%d is positive\n", val); return (val); } }
Output:
jp@jp-VirtualBox:~/$ ./a.out
Enter an integer: -1
-1 is negative
jp@jp-VirtualBox:~/$ echo $?
255 // exit status of the program
jp@jp-VirtualBox:~/$ ./a.out
Enter an integer: 50
50 is positive
jp@jp-VirtualBox:~/$ echo $?
50 // exit status of the program
Enter an integer: -1
-1 is negative
jp@jp-VirtualBox:~/$ echo $?
255 // exit status of the program
jp@jp-VirtualBox:~/$ ./a.out
Enter an integer: 50
50 is positive
jp@jp-VirtualBox:~/$ echo $?
50 // exit status of the program
How to get exit status of a command?
"echo $?" provides exit status of any program. Here, the exit codes of our program are the return values from main function. Exit codes are from 0 to 255(unsigned char). So, shell would return 255 for the exit code -1(wraparound occurs).
What is command line argument?
Basically, command is an executable used to perform a specific task(eg. ls command). Any arguments supplied to an executable(command) are called command line arguments.
Example:
ls -a => lists all files in a directory(including hidden files)
Here,
ls - command
-a - command line argument
main function with command line arguments:
main function can be written with no arguments or with command line arguments.
Consider the following example,
int main(int argc, char *argv[]) {
:
return 0;
}
Here, we have written main function with command line arguments.
argc and argv are command line arguments.
argc - number of command line arguments
*argv[] - array of character pointers
How to pass command line arguments in C?
While executing program in the shell, we can supply arguments along with executable name.
Example: ./a.out arg1 arg2 arg3
Example: ./a.out arg1 arg2 arg3
./a.out - Executable
arg1, arg2, arg3 - command line arguments
arg1, arg2, arg3 - command line arguments
Example C program to illustrate command line arguments:
#include <stdio.h> int main(int argc, char *argv[]) { int i; for (i = 0; i < argc; i++) { printf("argv[%d]: %s\n", i, argv[i]); // prints command line arguments } return 0; }
Output:
jp@jp-VirtualBox:~/$ ./a.out india is my country
argv[0]: ./a.out
argv[1]: india
argv[2]: is
argv[3]: my
argv[4]: country
argv[0]: ./a.out
argv[1]: india
argv[2]: is
argv[3]: my
argv[4]: country
Hello Everyone !
ReplyDeleteUSA SSN Leads/Dead Fullz available, along with Driving License/ID Number with good connectivity.
All SSN's are Tested & Verified.
**DETAILS IN LEADS/FULLZ**
->FULL NAME
->SSN
->DATE OF BIRTH
->DRIVING LICENSE NUMBER
->ADDRESS WITH ZIP
->PHONE NUMBER, EMAIL
->EMPLOYEE DETAILS
*Price for SSN lead $2
*You can ask for sample before any deal
*If you buy in bulk, will give you discount
*Sampling is just for serious buyers
->Hope for the long term business
->You can buy for your specific states too
**Contact 24/7**
Whatsapp > +923172721122
Email > leads.sellers1212@gmail.com
Telegram > @leadsupplier
ICQ > 752822040
Dell Laptop Service center are giving repair service at the door. We should high quality Dell out of warranty Laptop Repair, removal of virus, screen removal, wireless network set up, battery removal, motherboard replacement to several other are offered at budget friendly price and it’s Negotiable. We can fix them all in time by our well experience and certified technicians. If you want to repair your laptop in front of your eyesight, than you may call us: 7217871051
ReplyDelete