Kami "membutuhkan" itu, karena itu diharuskan oleh berbagai standar.
Kita bebas mengabaikan nilai sepenuhnya, tetapi karena ini adalah parameter pertama main
, kita harus memilikinya dalam daftar parameter. Di C ++ (dan mungkin dialek C non-standar), Anda bisa menghilangkan nama parameter, seperti cuplikan C ++ ini (mudah diubah ke C):
#include <stdio.h> // C-compatible include, guarantees puts in global namespace
// program will print contents of argv, one item per line, starting from argv[0]
int main(int /*argc*/, char *argv[]) { // uncomment argc for C
//(void)argc; // uncomment statement for C
for (int i=0; argv[i]; ++i) {
puts(argv[i]);
}
return 0;
}
Dalam standar C, dengan pengaturan peringatan umum, parameter yang tidak digunakan menghasilkan peringatan, yang dapat diperbaiki dengan pernyataan seperti (void)argc;
yang menyebabkan nama digunakan tanpa membuat kode apa pun.
argc
menyenangkan untuk dimiliki, karena jika tidak, banyak program perlu berjalan melalui parameter untuk mendapatkan hitungannya. Juga, dalam banyak bahasa pemrograman dengan array yang memiliki panjang, tidak ada argc
parameter apa pun , hanya ada array dengan itemnya.
int argc(char *argv[])
melakukan persis seperti ini :-))