- Siêu lớp và danh mục iOS/Objective-C
- object-c - -1001 lỗi khi NSURLSession vượt qua httpproxy và /etc/hosts
- java - Nhận địa chỉ url bằng lớp mạng
- ios - Âm thanh không phát trong thông báo đẩy
Trên máy GNU/Linux tôi sử dụng getopt_long
. Khởi tạo danh sách tùy chọn thành:
tùy chọn cấu trúc tĩnh long_options[] = {
{"chế độ", require_argument, 0, 9},
{0, 0, 0, 0}
};
Có những dòng mã sau
c = getopt_long(argc, argv, "", long_options, index_ptr);
Khi tôi chạy chương trình của mình bằng lệnh:
prog --mode
Dòng mã hiển thị ở trên trả về "?" trong c, nhưng không theo nhận được(3)
Trang Man được mong đợi ':':"Lỗi và kết quả trả về -1 giống với getopt()"
Có, khi sử dụng/phân tích các tùy chọn ngắn, có thể viết một cái gì đó như ":m:" trong danh sách tùy chọn để biến cho đối số bị thiếu c sẽ chứa ://: thay vì "?", nhưng khi phân tích cú pháp仅Làm cách nào để phân biệt hai tình huống (thiếu tham số, tùy chọn không hợp lệ) khi có tùy chọn dài?
Làm cách nào để phân biệt giữa các tùy chọn không hợp lệ và các tùy chọn thiếu tham số bắt buộc?
câu trả lời hay nhất
Cách duy nhất tôi có thể thấy để thực hiện phân biệt giữa các tùy chọn không hợp lệ và các tùy chọn hợp lệ với các đối số bị thiếu là chuyển đổi cấu trúc tùy chọn has_arg
Trường được đặt thành tùy chọn_đối số
, sau đó kiểm tra các tham số theo cách thủ công. Sau đó getopt_long()
sẽ chỉ trả về giá trị '?' khi có tùy chọn không hợp lệ, bạn có thể thực hiện việc này bằng cách xem quang học
để kiểm tra xem tùy chọn đã chỉ định có tham số hay không. Đây là một ví dụ:
#include
#include
#include
int main(int argc, char *argv[])
{
int tôi, chọn;
chỉ số int = -1;
tùy chọn cấu trúc tĩnh long_options[] = {
{"chế độ", tùy chọn_argument, NULL, 'm'},
{0, 0, 0, 0}
};
/* chặn các thông báo lỗi */
//opterr = 0;
while ((opt = getopt_long(argc, argv, "", long_options, &index)) != -1) {
if (opt == '?') {
/* có lẽ nên làm gì đó: */
//printf("Tùy chọn không hợp lệ\n");
//thoát (EXIT_FAILURE);
}
if (opt == 'm' && optarg == NULL) {
printf("Thiếu tham số trong tùy chọn '--mode'\n");
thoát (EXIT_FAILURE);
}
}
return 0;
}
Về c - Làm cách nào để xác định rằng đối số tùy chọn bắt buộc bị thiếu? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/40163234/
给定一个 Option[Future[Option[Int]]] : scala> val x: Option[Future[Option[Int]]] = Some ( Future ( Some
如果我理解正确,EitherT[Option,A,B] 应该与 Option[Either[A,B]] 相同,但编译器不同意.以下代码编译失败: def f[A,B] = implicitly[Eit
我刚开始在使用 parcel.js 构建静态 Assets 时遇到此错误。它在本地工作,但我在 Heroku 上的构建出错,我不确定它是否相关。 最佳答案 得到同样的问题。通过将 core-js 安装
当我生成 Telerik Report 时,只有 Export PDF 可用。即使我将 docx 和 xlsx 的配置设置为 true。这是我在网络配置中的配置。
我的 iTunesConnect 应用程序显示 Apple Pay 选项。我正在使用布伦特里。 即使我们没有在应用程序中使用 Apple Pay 功能。 有人可以帮我解决如何在我的 itunesCon
我正在 Raspbian 中从命令行运行以下查询: mysql -u $NAME -p $PASS Tweets -e "SELECT count(*) FROM raw_tweets;" 它输出以下
我正在尝试使用 ffmpeg(在 linux 下)为视频添加一个小标题。所以,我使用: ffmpeg -i hk.avi -r 30000/1001 -metadata title="SOF" hk_
我正在尝试使用 ffmpeg 使用 ffserver 流式传输视频。您将在 ffserver1.conf 文件下方找到 ffmpeg 命令的日志输出。 其中一个错误引用了预设,每次我尝试使用预设时,我
我正在尝试对 Option 使用 fold 或 map 操作而不是 match。 我有一个选项 val ao: Option[String] = xxxx 和一个函数 f: (String => Fu
Dockerfile documentation表示有可能通过 --platform FROM 中的选项像这样的指令: FROM [--platform=] [AS ] 在我的 dockerfile
我不确定“属性(property)”或“选项”是否是正确的术语,但这是我需要弄清楚的。 鉴于以下情况: ' $.fileup({ url: '/file/upload',
我正在尝试使用 jQuery 检查是否选择了值 = 1 的选择选项,然后将类添加到某些元素。但有些东西不起作用。可以请人看一下代码吗? 我的代码: Reservation
我对 VIM 中的这些感到困惑。有些事情需要设置,而另一些则让。 而且,我如何检查某个选项。我知道这是一个选项,因为我使用 set 来更改它。 例如,如何检查当前文件类型选项是否为 java? 最佳答
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 8 年前。 Improve this ques
我在看《Professional F# 2.0》一书作者展示如下代码 let a string : option = None if a.IsNone then System.Console.
我习惯使用方法顶部的 java 样板检查输入参数: public static Boolean filesExist(String file1, String file2, String file3
假设我有一串 "Insert Post -title Some PostTitle -category 2 -date-posted 2013-02:02 10:10:10" 我一直在尝试做的是将这个
从 1.3.70 EAP 开始,在 org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions 这是 var useIR: kotlin.Boolean 哪个激活
我无法获取订购捆绑商品的所有子产品及其选项。这可能吗? 最佳答案 以下是您如何找出哪些产品应与所有其他项目一起附加到列表中的捆绑产品中的方法: foreach ($order->getAllItems
Câu hỏi này dường như không hữu ích cho bất kỳ khách truy cập nào trong tương lai; nó chỉ liên quan đến một khu vực địa lý nhỏ, một thời điểm cụ thể hoặc một tình huống rất hẹp và thường không áp dụng cho khán giả Internet trên toàn thế giới. Để được trợ giúp làm cho câu hỏi này có thể áp dụng rộng rãi hơn, hãy truy cập
Tôi là một lập trình viên xuất sắc, rất giỏi!