V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  onemoo  ›  全部回复第 8 页 / 共 23 页
回复总数  449
1 ... 4  5  6  7  8  9  10  11  12  13 ... 23  
2015-03-15 23:11:07 +08:00
回复了 zeroday 创建的主题 C 关于指针与字符串数组的疑问
对于第一段代码:
从实现上来说,string literal通常被放到只读数据段中,你可以用指针指向它,但是不能修改。strcat函数会修改第一个参数所指向的那段内存。
如果写为 char dst[] = "Hello ",那你是使用“hello ”来初始化dst数组,所以你可以任意操作dst。

对于第二段代码:
如果Obj-C的库函数行为与C语言一致的话。那这段代码有很多安全问题:
首先,你得验证s1和s2中的东西是否为合法的字符串,以'\0'结尾?
其次,在while循环中,strcat两个参数所指的内存不能重叠,否则这个库函数的行为不确定。
2015-03-15 14:55:19 +08:00
回复了 herozem 创建的主题 C C 语言是没有传址的, 对吗?
LZ你的理解没问题。
C语言只有语义上的“传地址”,C++增加了&(reference),可视为实现了语法层面的传地址。
想要实现你的逻辑,就按照 2L 和 5L 的做法。

还有,也对于4L中的解释:“到了init方法以后,编译器会帮你再把*p和0给POP出来”,这是stdcall调用约定,在Win32 API中使用。如果你在Unix/Linux等使用cdecl调用约定的系统中,会看到压栈的参数是由调用者清理的。
2015-03-01 12:07:37 +08:00
回复了 heat 创建的主题 游戏 R 星放出《GTA5》PC 版 4K 级游戏截图放出 — 风景美如画
官图无限美...恨我显卡渣...

可是,R星,你倒是赶紧出PC啊!从去年等到今年,我钱都交了,你又跳票到4月......要是你的优化还那么渣,那可对不起这频繁的跳票啊...
2015-02-27 22:45:09 +08:00
回复了 tonyleen 创建的主题 分享发现 这个图片我看是白+金色,有同事说蓝+黑色......
我看的是偏浅色,但也不完全是白和金。

果壳上有文章是这样解释的:
http://www.guokr.com/article/439985/
2015-02-17 14:04:36 +08:00
回复了 acgeo 创建的主题 程序员 Nim 比 rust 好? 为什么呢?
"Unix kernel in rust"的作者在github上接受问询时给出了他的看法,链接 https://github.com/ckkashyap/rustix/issues/8
2015-02-17 00:00:46 +08:00
回复了 1097341596 创建的主题 随想 捡到手机大家会怎么办
以前有朋友捡到手机,想联系通讯录中的人看看有没有人认识失主,拨通了一个,但人家跟失主也不熟,本想继续打给别人问问,结果被停机了...
看来失主也不打算要回手机
2015-02-16 23:55:24 +08:00
回复了 rust 创建的主题 生存游戏 Rust 原来 Rust 同时还是一个游戏
2015-02-12 12:09:57 +08:00
回复了 huixsx 创建的主题 程序员 quora 上的程序学习选择图,配上指环王
所以我选了C++,哈哈~
2015-02-10 14:42:50 +08:00
回复了 igboy 创建的主题 C int a = 0; a = (++a) + (++a) + (++a) + (++a);为什么 a 最终等于 11
楼上很多人都说了,这个行为是undefined。
用这几个关键字去google吧:副作用(side effect)、序列点(sequence point)

虽然是未定义的,但如果你想知道你的gcc是用什么样的实现来得到这个结果的 ,请查看汇编:objdump -d
2015-02-05 22:54:35 +08:00
回复了 charlieexia 创建的主题 C 想学 C 有什么好的书推荐下不+
看了上面这么多回复,LZ脑子都乱了吧?
LZ下次再问这种问题,最好先说明自己的计算机基础,比如会哪种语言?曾有过哪些语言的使用经验?这样有助于大家帮你推荐适合的书。

C语言是个较为“底层”的语言,理解它要涉及到计算机方方面面的很多知识。
如果你是在校生,并且要学习这门语言,那就跟着老师走,不明白的去找“明白人”问问。被带入门后再去看更深入的东西。
如果你是自学,并且对计算机基础不甚了解,那么在没有旁人指导的情况下学习C较为困难。

首先,《The C programming language》是经典权威,但不推荐给入门者看。它的目标人群是那些了解计算机,会编程,只是想学C语言的人。新人看它多半会云里雾里。 另外,它的第二版也是10多年前出版的了,虽然不能说过时,但也没跟上C语言的演进。

对于纯新手自学,推荐《C Primer Plus》。有中文版,你尽量看最新版本。这本书一开始帮你普及计算机基础知识,对于学好C是很有帮助的。所以我才说它适合自学。

上面还有人提到《Linux C编程一站式学习》,我只能说这本书是奇葩,注意我用的是褒义! 在这本书中作者讲到了计算机的原理、组成、汇编......各种方面都有涉及,虽然并不精讲,但个人觉得对入门C语言是很有帮助的。我觉得这倒是难得的国人写的好书。 只不过它要求你有Linux使用基础,所以你看上面那本就可以了。

还有一些你从书名上就能看出是进阶的书,待你入门C后再看吧。
2015-02-05 09:42:02 +08:00
回复了 qq446015875 创建的主题 Linux 问题:有关 Linux 内核中网络层数据包转发流程的疑问
@ryd994
我回复中的“但是再出本机的时候还要路由一次”的“路由”,应该是对应2L图中OUTPUT部分的那个“Check for Nat Reroute”,看起来是在filter OUTPUT之前啊?!

还有一点,关于这个从本机出时的route的位置,有的资料中将route时机放到了raw、mangle、nat的OUTPUT链前面,当然也都在filter OUTPUT之前。比如6L的那个图。
2015-02-04 22:49:28 +08:00
回复了 qq446015875 创建的主题 Linux 问题:有关 Linux 内核中网络层数据包转发流程的疑问
接5L的回答
对于destIP是本机的数据包,也是在route后才知道是本机的啊,但是再出本机的时候还要路由一次,这样才能确定把包给谁,所以发生在OUTPUT之前。
不加班就只剩13000了,可是加班还不加分...

最后那个招聘网站的广告还吐槽我们还不够好...
2015-02-03 09:38:01 +08:00
回复了 laomutuo 创建的主题 程序员 现在还有人学汇编么?
即便不搞硬件、不搞嵌入式、不写汇编,但在debug C/C++时还是会用到的。
2015-01-30 22:24:39 +08:00
回复了 Actrace 创建的主题 程序员 为什么当了程序员。。
我不是计算机专业的,不过在大学中接触了虚拟现实这个东西,知道能用来做游戏,就突然对做游戏感兴趣了,于是跳到了这个坑里...
2015-01-28 22:56:15 +08:00
回复了 ShiehShieh 创建的主题 Linux 大家用 C/C++开发的时间多吗?
@andyzhshg 我倒是觉得C++11很好啊,右值引用很好用...
现在能用C++11就不用C++98.
1 ... 4  5  6  7  8  9  10  11  12  13 ... 23  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   998 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 35ms · UTC 18:48 · PVG 02:48 · LAX 10:48 · JFK 13:48
Developed with CodeLauncher
♥ Do have faith in what you're doing.