C小试牛刀

这几天写个超级小的东西都弄了好久的时间。

原因:

1、没有了解“客户”的需求;

2、掌握太差;

3、有点死脑筋了。

先是要运行某个文件,非要整个system()函数,原以为他想要运行某个exe文件,死命的拼写出start cmd.exe等字样的char *p,原来直接赋值的指针是作为常量的。

char *p = "C://windows//system32//cmd.exe"一个指向字符串的指针常量而已。隐含了const的意思。后来在CU上看到同样问题的人,在用strcat的拼写时,出错的。有人说和具体的环境有关。。。在DOS下是可以的。晕乎!

得了,在用system()的时候就有人提议用ShellExecute()才用了下,果然好用的函数。

后来才知道是要fopen的功能而已。改。。。

改的时候特诡异,以前记得在学这个时候,老师千叮咛万嘱咐的说,fopen后一定要fclose,否则文件打开的句柄将被留在内存中,我就要的是这个效果,没想到的是,居然程序结束了就自动关闭了。无语。

得了,常驻内存吧,首先想法,弄个server类型的或者是用线程/进程挂起或等待就好。可是没找到相关的内容。(C太菜的缘故),发现一个keep()的函数,怎么调都用不了。Y?今天查了下,原来我的DOS.H里面没有这个函数。

麻烦是麻烦,那个时候我就说写个死寻欢就常驻内存了,其实这样的不增加资源的消耗的,今天测试了下是可以的,再加上之前的ShellExecute()的组合,就可以咯。

 

这么多里面,充满着失败,狂伤心的。。。

在这里有很多思想上的错误,也许程序员不是该光追求技术,很多时候可以有其他的处理办法,这个才是比较好的。不要挂死在牛角尖里!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值