作者hsm926 (韩森慢)
看板C_Sharp
标题[问题] 有关C++转换成C#的char问题
时间Tue Sep 1 18:10:11 2009
假如我要把c++ 下面这段
size = 5;
char prefix[size] = "";
宣告它为长度为5的char空array
使用strlen(prefix) 他的长度会是0
但prefix[1]、prefix[2]…等等是可以填值的
使用c#写法的话
char[] prefix = new char[5];
prefix.Length 就会等於5
如果我宣告成 char[] prefix = new char[] {};
使它为空array
这时用 prefix.Length 就会等於0 与c++结果相同
但是prefix[1]、prefix[2]…等等 却无法填值 它会显示
索引在阵列的界限之外
该怎麽解决这个问题呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.27.189.104
1F:→ james732:呃,你知道strlen算的是什麽吗?还有这麽做的理由是? 09/01 18:27
2F:→ Cloud:你应该是想要动态产生字串吧...何不用string 09/01 18:32
3F:推 petrushka:你的阵列是空阵列当然无法填值,建议改C#的string用法吧 09/01 19:22