作者legnaleurc (CA)
看板Programming
标题Re: 还是同一个问题 (c语言)
时间Tue Jun 10 19:07:50 2008
前人都讲了重点了,不赘述
※ 引述《"mynews" <[email protected]>, 看板: Programming》之铭言:
: 间,不过我常在很多opensource 看到这类的用法
: char *__progname = "prog";
: 这样用到底是不是正确的用法?安全的使用字串应该使用阵列?
你想要写入字串应该用阵列
只拿来读可以只用literal
事实上literal真正安全的写法是
const char * const porgname = "prog";
除了强制转型之外不会有任何恶搞机会
只是很久以前似乎并没有const这种东西
而compiler为了相容旧code也接受不加const的写法
好习惯是在你判断内容不该被更改时就加上const修饰
: 到底那些用法是安全且正确?
C严格来说没什麽好安全的(茶)
只有安全的好习惯
--
自High笔记(半荒废)
http://legnaleurc.blogspot.com/
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.123.224.126
1F:推 keroclow:推这篇~不想被改就加CONST 61.59.149.18 06/11 00:35