水木社区手机版
首页
|版面-C++程序设计语言(CPlusPlus)|
新版wap站已上线
返回
下页
|
尾页
|
1/8
|
转到
主题:c++太垃圾
楼主
|
mrunmatched
|
2023-02-15 23:03:28
|
只看此ID
明明编译都检查出数组越界了,愣是只报warning,还允许编译通过,是怎么想的?给黑客留后门?
不怪很多大公司呼吁用内存安全语言替换他,再不思进取,过几年就被淘汰了。
自以为是的小伙伴们看看下面的内容吧
发自「今日水木 on HMA-AL00」
--
修改:mrunmatched FROM 223.72.88.*
FROM 223.72.44.*
1楼
|
hgoldfish
|
2023-02-16 01:39:03
|
只看此ID
这是一个 c 的技巧,定义 char[0] 数组。但实际长度另说。
【 在 mrunmatched 的大作中提到: 】
: 明明编译都检查出数组越界了,愣是只报warning,还允许编译通过,是怎么想的?给黑客留后门?
: 不怪很多大公司呼吁用内存安全语言替换他,再不思进取,过几年就被淘汰了。
: 发自「今日水木 on HMA-AL00」
: ...................
--
FROM 183.253.147.*
2楼
|
z16166
|
2023-02-16 08:16:36
|
只看此ID
不是强制,而是warning,多好,正经点的team都会看warning的吧
而且可以选择将warning视为error
【 在 mrunmatched 的大作中提到: 】
: 明明编译都检查出数组越界了,愣是只报warning,还允许编译通过,是怎么想的?给黑客留后门?
: 不怪很多大公司呼吁用内存安全语言替换他,再不思进取,过几年就被淘汰了。
: 发自「今日水木 on HMA-AL00」
--
FROM 222.131.205.*
3楼
|
mrunmatched
|
2023-02-16 08:58:15
|
只看此ID
我知道可以选,但是为什么不强制呢?非要留个口子,什么考虑?
【 在 z16166 的大作中提到: 】
:
: 不是强制,而是warning,多好,正经点的team都会看warning的吧
:
: 而且可以选择将warning视为error
: --
:
发自「今日水木 on HMA-AL00」
--
FROM 223.70.210.*
4楼
|
HerSMTH
|
2023-02-16 09:10:39
|
只看此ID
为啥定义char[0]数组啊?定义个char*指针不香?
【 在 hgoldfish 的大作中提到: 】
: 这是一个 c 的技巧,定义 char[0] 数组。但实际长度另说。
--
FROM 42.3.19.*
5楼
|
HerSMTH
|
2023-02-16 09:11:09
|
只看此ID
估计有些人喜欢用奇技淫巧,强制的话,这帮人要不爽了
【 在 mrunmatched 的大作中提到: 】
: 我知道可以选,但是为什么不强制呢?非要留个口子,什么考虑?
: 发自「今日水木 on HMA-AL00」
--
FROM 42.3.19.*
6楼
|
hothail
|
2023-02-16 10:15:57
|
只看此ID
因为你不是造物主
- 来自 水木社区APP v3.5.5
【 在 mrunmatched 的大作中提到: 】
: 我知道可以选,但是为什么不强制呢?非要留个口子,什么考虑?
--
FROM 111.206.87.*
7楼
|
hgoldfish
|
2023-02-16 12:29:52
|
只看此ID
因为 char[0] 和 char* 不一样啊。
前者在申请内存的时候这样:
struct example {
int i;
char buf[0];
};
struct example *ex = malloc(sizeof(struct example) + 1024);
putc(ex->buf[64]);
你用 char* 做不到这个效果。
【 在 HerSMTH 的大作中提到: 】
: 为啥定义char[0]数组啊?定义个char*指针不香?
--
FROM 183.253.147.*
8楼
|
mrunmatched
|
2023-02-16 12:41:46
|
只看此ID
为了这些根本不值得,内存错误会导致很多随机错误,需要浪费很多人力时间去测试,找bug。要是火箭汽车控制之类的,因为这种问题出bug,损失太大了
【 在 HerSMTH 的大作中提到: 】
:
: 估计有些人喜欢用奇技淫巧,强制的话,这帮人要不爽了
: --
:
发自「今日水木 on HMA-AL00」
--
FROM 223.70.210.*
9楼
|
hgoldfish
|
2023-02-16 13:44:24
|
只看此ID
那么你应该去用 java. 不是 c++ 更不是 c.
【 在 mrunmatched 的大作中提到: 】
: 为了这些根本不值得,内存错误会导致很多随机错误,需要浪费很多人力时间去测试,找bug。要是火箭汽车控制之类的,因为这种问题出bug,损失太大了
: 发自「今日水木 on HMA-AL00」
--
FROM 124.72.109.*
下页
|
尾页
|
1/8
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版