Đây là một chương trình C đơn giản mà in số lượng đối số dòng lệnh được truyền cho nó:Command Line Đối số Đếm
#include <stdio.h>
int main(int argc, char *argv[])
{
printf("%d\n", argc);
}
Khi tôi cung cấp cho các đầu vào
file_name *
It in 623 thay vì 2 trong máy tính của tôi (hệ điều hành Windows 7). Nhưng nó cho đầu ra chính xác trong các trường hợp khác. Có phải *
một ký tự dành riêng cho đối số dòng lệnh không? Lưu ý chương trình này cung cấp cho sản lượng chính xác cho các đầu vào sau:
file_name *Rafi
Output = 2
@pmg: Tôi đã sửa đổi các câu hỏi để 'file_name' là một từ chứ không phải là hai ... mà có lẽ những gì Rafi dự định. Nếu không, anh ấy sẽ chỉnh sửa lại và chúng tôi có thể nghi ngờ về 2 so với 3 lần nữa. –
Trình biên dịch C/C++ của Microsoft ('cl.exe') sẽ in 2 trong cả hai ví dụ của bạn. Bạn đang sử dụng một trình biên dịch khác? – user7116
Yah .. bạn là đúng :) @ Jonathan –