金色的骷髅 发表于 2015-1-16 22:17:32

ASP.NET网站制作之getopt() 对命令行参数举行剖析

无论谁倒了对双方阵营的粉丝们也是有害无益。getopt()对命令行参数举行剖析
intgetopt(intargc,char*constargv[],constchar*optstring);
给定了命令参数的数目(argc)、指向这些参数的数组(argv)和选项字符串(optstring)后,getopt()将前往第一个选项,并设置一些全局变量。利用不异的参数再次挪用该函数时,它将前往下一个选项,并设置响应的全局变量。假如不再有辨认到的选项,将前往-1,此义务就完成了。能够反复挪用getopt(),直到其前往-1为止.
getopt()所设置的全局变量包含:
optarg——指向以后选项参数(假如有)的指针。
optind——再次挪用getopt()时的下一个argv指针的索引。
optopt——最初一个已知选项。
个中optstring誊写格局以下:"f:e:ac",个中:暗示前一个字符是带参数的
例子:
#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>

intmain(intargc,char*argv[]){
into;
externintoptind,optopt,opterr;
externchar*optarg;

opterr=0;
while((o=getopt(argc,argv,"f:e:a"))!=-1){
switch(o){
casef:
fprintf(stderr,"f%s
",optarg);
break;
casee:
fprintf(stderr,"e%s
",optarg);
break;
casea:
fprintf(stderr,"a%s
",optarg);
break;
case?:
if(optopt==foptopt==e)
fprintf(stderr,"Option-%crequiresanargument.
",optopt);
elseif(isprint(optopt))
fprintf(stderr,"Unknownoption`-%c.
",optopt);
else
fprintf(stderr,"Unknownoptioncharacter`x%x.
",optopt);
return1;
default:
printf("Unknownoptioncharacte");
abort();
}
}
}

必要注重的是:
变量optind,optopt,opterr,optarg都是全局变量,内部援用,界说时都必要加"extern"
"f:e:a"暗示-f和-e有参数,-a没有参数,编译为test,并测试
#./test-aabc-f"abc"-eabc
a(null)
fabc
eabc
#./test-aabc-f"abc"-e
a(null)
fabc
Option-erequiresanargument.

不外,如许的代码还在存在成绩,假设"-f"前面短少参数,它会误把"-e"看成"-f"的参数
#./test-aabc-f-e"abc"
a(null)
f-e
本文链接http://www.cxybl.com/html/net/winform/20120610/29307.html学习asp.net两个月有余了,除了对html、web控件比较熟悉(应该是说都能理解和接受)之外,竟不知道自己还会什么。看了两本书:《精通asp.net网络编程》(人民邮电出版社)、《asp.net实用案例教程》(清华大学出版社)。

若天明 发表于 2015-1-17 20:51:28

Asp.net脚本的出现,为ASP空间带来了更高的稳定性,同时也为程序员建站提供更高环境!

小妖女 发表于 2015-1-21 09:07:48

ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于重用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用,满足计算向Web转移的战略需要。

透明 发表于 2015-2-6 12:39:37

最强的技术支持WebService,而且有.NET的所有library做后盾。而且ASP.NET在.NET3.5中还有微软专门为AJAX开发的功能--ASP.NETAJAX。

山那边是海 发表于 2015-2-16 03:48:46

最强的技术支持WebService,而且有.NET的所有library做后盾。而且ASP.NET在.NET3.5中还有微软专门为AJAX开发的功能--ASP.NETAJAX。

飘飘悠悠 发表于 2015-3-4 23:31:48

ASP.NET:ASP.net是Microsoft.net的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。

愤怒的大鸟 发表于 2015-3-11 21:29:29

当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。

蒙在股里 发表于 2015-3-19 14:33:19

使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行,用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。

爱飞 发表于 2015-3-28 13:49:56

ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp)。
页: [1]
查看完整版本: ASP.NET网站制作之getopt() 对命令行参数举行剖析