24小时热门版块排行榜    

查看: 1789  |  回复: 29

anntoy

木虫 (著名写手)

引用回帖:
7楼: Originally posted by libralibra at 2012-08-04 16:54:19
dos是机器自己发明出来的吗?难道不是事先写好的程序?微软是干嘛吃的?
dos也是一个程序好不好!!!...

看到8楼的回复,我只能说无限同情~~~
11楼2012-08-05 13:44:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

anntoy

木虫 (著名写手)

引用回帖:
8楼: Originally posted by as23p at 2012-08-04 22:11:31
我知道了,你根本就不懂,别这儿捣乱了...

12楼2012-08-05 13:44:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

引用回帖:
11楼: Originally posted by anntoy at 2012-08-05 13:44:43
看到8楼的回复,我只能说无限同情~~~...

看到8楼的回复,我也很同情.
我回答这个帖子本来就是个错误.
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
13楼2012-08-05 16:16:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

as23p

木虫 (小有名气)

引用回帖:
9楼: Originally posted by wangybcn at 2012-08-05 13:34:28
比较好理解,例如我们执行一个可行性文件a.exe,有时候会加一些参数,例如在命令行里执行c:\...\word.exe my.doc,那么会启动一个word,而且这个word会自动打开一个叫my.doc的文件,干这个活儿的是word这个可执行文件 ...

对照C语言的话,你说的word.exe应该相当于咱们将代码编译后生成的可执行文件。如果想要word.exe正确解析参数,是需要将具体的原则写到代码里吧,因为机器顶多能做到识别某个字符,至于识别该怎么做,是变量自加一还是自减一,难道不需要咱们告诉它么?
从你的描述来看,似乎是说 argc 和 argv 与其他的变量不同?这听起来就很奇怪,明明是普通的整型变量和数组。。。所以我觉得这两个东西的初始化应该原则上和代码内部的其他变量是一样的,只不过因为每个程序这过程都相同,所以就单独存放在系统某处了(库文件?),每次编译代码时编译器自动做了这个工作。这只是我的推测,我就是想问是不是这么回事,以及如果是那么关于 argc 的部分放在哪里了
14楼2012-08-06 00:58:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

as23p

木虫 (小有名气)

引用回帖:
9楼: Originally posted by wangybcn at 2012-08-05 13:34:28
比较好理解,例如我们执行一个可行性文件a.exe,有时候会加一些参数,例如在命令行里执行c:\...\word.exe my.doc,那么会启动一个word,而且这个word会自动打开一个叫my.doc的文件,干这个活儿的是word这个可执行文件 ...

像咱们要想变量从外部设备读入内容时,是需要写出相应的代码的,否则变量自己怎么会自动读入呢?这点对于argc和argv应该也是一样的,所以我觉得用于初始化这两个东西的代码不是不存在,而是独立出去了。。。
15楼2012-08-06 01:11:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

as23p

木虫 (小有名气)

引用回帖:
12楼: Originally posted by anntoy at 2012-08-05 13:44:52
...

你觉得我冤枉他了么?
我问的是变量初始化的问题。如果说是操作系统做的,就请讲讲操作系统是如何做到的。你看看他是什么态度,什么叫“微软是干嘛吃的”???净摆些不沾边的事,还什么“给你一个字符串,你不是也能切割知道”;他小子也不是生下来就会数数,还不是他家大人教给他的。
计算机的话就更不可能自动算什么东西了,不都得有代码告诉它怎么做才行么。argc和argv说到底也只是普通的变量和数组,没代码就能自动初始化,这可能么?真有自动初始化的功能那读文件时还调用函数干什么???所以我觉得这工作是编译器还是啥的事先做好了,相应的代码是单独放在那儿了;我就是问这个,你说他像个懂行的样子么???
16楼2012-08-06 01:22:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wangybcn

禁虫 (正式写手)

本帖内容被屏蔽

17楼2012-08-06 08:03:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

as23p

木虫 (小有名气)

引用回帖:
17楼: Originally posted by wangybcn at 2012-08-06 08:03:14
argc和argv和其它变量没有区别,唯一不同的是,它不需要声明,而是由编译器直接由main函数传入的实参。
argc和argv由编译器读入后,怎么处理就有程序本身完成。我觉得是其它语言干扰了你的思路,F语言比较死板,看 ...

argv[]的内容归根结底是由外部设备(键盘)输入的,但咱们所写的代码里并没有相应的语句。应该是C语言的内核或者编译器之类的包含了相应的机制才对,否则一个变量怎么可能自动从外部设备读取内容呢?
18楼2012-08-06 10:29:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

as23p

木虫 (小有名气)

引用回帖:
17楼: Originally posted by wangybcn at 2012-08-06 08:03:14
argc和argv和其它变量没有区别,唯一不同的是,它不需要声明,而是由编译器直接由main函数传入的实参。
argc和argv由编译器读入后,怎么处理就有程序本身完成。我觉得是其它语言干扰了你的思路,F语言比较死板,看 ...

我之前是一直在用Fortran的,但我不认为我的问题是和Fortran有直接关系,而是人机交流的原则本应如此。因为机器是死的,没有学习和思考的能力,所以我们才需要自己初始化变量,告诉它哪个变量的值是什么或者应该从哪里去取值。既然argc和argv和其它变量没有区别,机器也还是那个机器,那么初始化的根本方法就应该是一样的啊?!
我知道 argc 的 argv[] 的内容是什么,但我想知道它们是在哪里被告知要如此取值的?
19楼2012-08-06 10:35:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sunnyway

铜虫 (小有名气)

引用回帖:
11楼: Originally posted by anntoy at 2012-08-05 13:44:43
看到8楼的回复,我只能说无限同情~~~...

老实说,我也很同情
20楼2012-08-06 10:58:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 as23p 的主题更新
信息提示
请填处理意见