Chinaunix

标题: 一个坑啊 没注意 [打印本页]

作者: 你还未够水准呢    时间: 2013-04-05 00:44
标题: 一个坑啊 没注意
一个程序一直段错误。。。最后发现

FILE *ptr = fopen(argv[1], 'r'); 错误


FILE *ptr = fopen(argv[1], ”r“); 正确

泪奔 。。。。。
作者: folklore    时间: 2013-04-05 07:56
lzsb, over
作者: 你还未够水准呢    时间: 2013-04-05 11:00
一直都很sb
folklore 发表于 2013-04-05 07:56
lzsb, over

作者: pmerofc    时间: 2013-04-05 11:05
提示: 作者被禁止或删除 内容自动屏蔽
作者: linux_c_py_php    时间: 2013-04-05 11:15
'r'是一个字节, 扩宽到void *的长度后被当作一个地址, 相当于你访问了(void *)'r'这个地址, 非法访问内存.
""本身是常量字符串, 会被编译器填入其地址.
作者: __BlueGuy__    时间: 2013-04-05 11:16
folklore 发表于 2013-04-05 07:56
lzsb, over


这种人怎么还活着呀 ?
作者: 你还未够水准呢    时间: 2013-04-05 12:11
拉出去埋了么回复 6# __BlueGuy__


   
作者: 你还未够水准呢    时间: 2013-04-05 12:12
的确没注意。。。。。回复 4# pmerofc


   
作者: pmerofc    时间: 2013-04-05 14:16
提示: 作者被禁止或删除 内容自动屏蔽
作者: 你还未够水准呢    时间: 2013-04-05 18:13
教育的是。。。。。

主要是那个警告没看明白

我在别的语言里面 打开文件 可以用'r'....

回复 9# pmerofc


   
作者: cokeboL    时间: 2013-04-05 18:22
程序员无视警告很正常,我公司项目代码,每个都警告过千
作者: linux_c_py_php    时间: 2013-04-05 18:43
gcc的警告很给力的, 吃过大亏.
作者: 你还未够水准呢    时间: 2013-04-05 19:18
是很给力 不过有时候  提示一大堆东西。。。。。
linux_c_py_php 发表于 2013-04-05 18:43
gcc的警告很给力的, 吃过大亏.

作者: woshimajia123    时间: 2013-04-05 19:47
你还未够水准呢 发表于 2013-04-05 18:13
教育的是。。。。。

主要是那个警告没看明白


那是别的语言'和“代表的意思都一样,比如python,都是字符串,没有字符这个概念
作者: txgc_wm    时间: 2013-04-05 19:57
学习了,看来以后得注意类似的事情了。
作者: captivated    时间: 2013-04-06 02:20
回复 5# linux_c_py_php


    哥能小声的告诉你一般那地址会被链接器重定位嘛
作者: thaldn    时间: 2013-04-06 11:36
多跳几次坑,把坑填平就OK了
作者: amarant    时间: 2013-04-06 16:48
python,shell,c混用的人,有时候确实会手快敲错了。但是一编译马上就会发现自己的错误
作者: hededisanan00    时间: 2013-04-07 16:30
回复 5# linux_c_py_php
受教了


   
作者: cascle    时间: 2013-04-26 20:25
警告可以不改,但不能不看啊
作者: qinggeng    时间: 2013-04-27 09:46
楼主写python写习惯了?
作者: InMySin    时间: 2013-04-27 15:58
哈哈,楼主分享自己的错误,很好啊,以后也得注意下,自己也会犯这种错误。。
不过的确要看看为什么有warning。。。。
作者: pix77    时间: 2013-04-28 11:33
回复 18# amarant


    是啊,经常就是混乱
作者: 轨迹16    时间: 2013-04-28 11:46
这些应该是比较基本的问题,'r'实际上就是一个值。“r”,实际上是一个指向这个字符串的地址。
作者: windoze    时间: 2013-04-28 13:50
这个例子活生生告诉我们,强类型系统是多么重要啊啊啊啊啊啊~~~~~~~




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2