我有一個char一個問題*陣列中C(GCC Linux)的填充字符*陣列從0到x
在Debian它的工作原理,但對另一系統(yocto,raspbian)來分割故障
工作守則的Debian:
char *myarray;
for (i=0;i<999;i++){
printf(myarray, "%i", i);
//do something with string to compare in file
}
但在另一個系統本準則的錯,我試圖使一個數組:
char *myarray[999]={"0","1","2"};
for (i=0;i<999;i++){
//do something with string[i] to compare in file
}
這個代碼也可以,但我不喜歡從手工填充陣列「999」
我還沒有找到一種方法,使從「0」 char *string[arr]
- 在一個循環「999」
如果你的第一個代碼在Debian中工作,那純粹是偶然的。你爲某事分配一個指針,但從不初始化它;那麼你可以訪問它的內容。而且,'printf'這行的語法真的很奇怪。你確定這是你的「工作代碼」嗎? – usr2564301
@RadLexus正如下面的ameyCU指出的那樣,他的意思是(或者應該是)sprintf()。但是,整個事情都是愚蠢的。 –
該問題被用作「停止!在重新打開隊列中查看和收聽。我恭敬地不同意。一個人應該能夠向窮人發佈一個顯示良好代碼的答案。 – manuell