argc و argv در سی و سی++

argc و argv، آرگومان‌های خط فرمان جهت ارسال به تابع main در سی و سی++ می‌باشند. argc تعداد رشته‌هایی است که argv به آن اشاره می‌کند. argc مخفف کلمهٔ argument count و argv مخفف کلمهٔ argument vector می‌باشد. argc و argv را می‌توان به هر نام دلخواهی تغییر داد.

int main(int argc, char *argv[])
int main(int num_args, char *arg_strings[])

اگر قصد آنالیز دستورات خط فرمان را ندارید، می‌توانید بطور کامل آن‌ها را حذف کنید.

int main(int argc, char *argv[])
int main(void)
int main()

[]argv* و argv** معادل یکدیگر هستند و از هر کدام که خواستید می‌توانید در کدنویسی استفاده کنید.

int main(int argc, char *argv[])
int main(int argc, char **argv)

نحوهٔ استفاده از این دو آرگومان در مثال زیر بیان شده است.

#include <stdio.h>

int main(int argc, char *argv[])
{
    int i;

    printf("\nThis program was called with \"%s\".\n\nargv[0] = %s\n", argv[0], argv[0]);

    if(argc > 1)
        for(i = 1; i < argc; i++)
            printf("argv[%d] = %s\n", i, argv[i]);
    else
        printf("\nThe command had no other arguments.\n");

    return 0;
}