/****************************************************************
Copyright 1996 by Lucent Technologies.
Permission to use, copy, modify, and distribute this software and
its documentation for any purpose and without fee is hereby
granted, provided that the above copyright notice appear in all
copies and that both that the copyright notice and this
permission notice and warranty disclaimer appear in supporting
documentation, and that the names of Bell Laboratories or Lucent
Technologies or any of their entities not be used in advertising
or publicity pertaining to distribution of the software without
specific, written prior permission.
Lucent disclaims all warranties with regard to this software,
including all implied warranties of merchantability and fitness.
In no event shall Lucent be liable for any special, indirect or
consequential damages or any damages whatsoever resulting from
loss of use, data or profits, whether in an action of contract,
negligence or other tortious action, arising out of or in
connection with the use or performance of this software.
****************************************************************/
/* Source for a "getopt" command, as invoked by the "fc" script. */
#include <stdio.h>
static char opts[256]; /* assume 8-bit bytes */
int
#ifdef KR_headers
main(argc, argv) int argc; char **argv;
#else
main(int argc, char **argv)
#endif
{
char **av, *fmt, *s, *s0;
int i;
if (argc < 2) {
fprintf(stderr, "Usage: getopt optstring arg1 arg2...\n");
return 1;
}
for(s = argv[1]; *s; ) {
i = *(unsigned char *)s++;
if (!opts[i])
opts[i] = 1;
if (*s == ':') {
s++;
opts[i] = 2;
}
}
/* scan for legal args */
av = argv + 2;
nextarg:
while(s = *av++) {
if (*s++ != '-' || s[0] == '-' && s[1] == 0)
break;
while(i = *(unsigned char *)s++) {
switch(opts[i]) {
case 0:
fprintf(stderr,
"getopt: Illegal option -- %c\n", s[-1]);
return 1;
case 2:
s0 = s - 1;
if (*s || *av++)
goto nextarg;
fprintf(stderr,
"getopt: Option requires an argument -- %c\n",
*s0);
return 1;
}
}
}
/* output modified args */
av = argv + 2;
fmt = "-%c";
nextarg1:
while(s = *av++) {
if (s[0] != '-')
break;
if (*++s == '-' && !s[1]) {
s = *av++;
break;
}
while(*s) {
printf(fmt, *s);
fmt = " -%c";
if (opts[*(unsigned char *)s++] == 2) {
if (!*s)
s = *av++;
printf(" %s", s);
goto nextarg1;
}
}
}
printf(*fmt == ' ' ? " --" : "--");
for(; s; s = *av++)
printf(" %s", s);
printf("\n");
return 0;
}
cblas提供c接口的blas库,源码通过f2c转换为C语言
版权申诉
21 浏览量
2024-03-22
22:20:26
上传
评论
收藏 239KB ZIP 举报
新华
- 粉丝: 9950
- 资源: 623
最新资源
- Screenshot_2024-06-05-21-20-09-259_net.csdn.csdnplus.jpg
- miflash_unlock.zip
- stream.x64.x-none.rarstream.x64.x-none.rarstream.x64.x-none.rars
- MAVEN 教程和详细讲解
- 目标检测高空拍摄道路小车轿车检测数据集601张VOC+YOLO格式.zip
- 智慧旅游 大屏模板 静态模板
- JSP+sql网络远程作业处理系统
- 2024年全国一卷高考数学等3个文件(1).zip
- 实战自学python如何成为大佬(目录):https://blog.csdn.net/weixin-67859959/artic
- PHP新闻网站系统源代码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈