Avi Maikoo Avi Maikoo - 9 months ago 51
C Question

How to specify command line arguments for my C program when running it from the Eclipse IDE

I have some code that is executed from the command line. It takes 3 parameters:

"example.txt" 3 s

I want to be able to run this program from inside of my Eclipse IDE instead of running it from the command line but I do not know how to assign the parameters without creating bugs int the program.

Here is the main method below:

int main(int argc, char **argv) {
if (argc != 4) {
fprintf(stderr, "Usage: %s <input file> <num clusters> "
"<linkage type>\n", argv[0]);
} else {
item_t *items = NULL;
int num_items = process_input(&items, argv[1]);
if (num_items) {
cluster_t *cluster = agglomerate(num_items, items);

if (cluster) {
fprintf(stdout, "CLUSTER HIERARCHY\n"

int k = atoi(argv[2]);
fprintf(stdout, "\n\n%d CLUSTERS\n"
"--------------------\n", k);
get_k_clusters(cluster, k);
return 0;

I am using c++ and eclipse IDE.

Answer Source

You basically need to create a debug/run configuration for said project. Go to Run->Debug Configurations, select C/C++ Application, then create a new configuration. After that, you have to specify some information, like the application, the eclipse project, and your program`s arguments, on the Arguments Tab.

Screenshots from here are a bit old, but should give you the idea.

After that, hit Debug or Run, and Eclipse shoud start your program with the given parameters.