0
我想在雙數組中定義多個字符串,例如 values [0] [] =「something」,values [1] [] =「其他... 然後我想要填充每個字符串的長度,使它們是128個字符 最後,我想將128個字符串拆分爲4個字符的字符串,並將它們寫入4乘4(所以32個寫入)我知道我有幾個問題,但任何人都可以幫助?多個字符串操作不起作用
我發現這個問題,這是我的代碼,它不會是我想要的東西。感謝所有的建議。
for(k=0;k<inputs;k++){//do for all inputs
flag = 0;
int len = strlen(values[k]);
int padded_len = 127;
int i;
//pad inputs
for(i = 0; i < padded_len-len; i++){
strcat(values[k], "0");
}
for (off = 0; off < 128; off += 4){
strncpy(temp[k], values[k]+off, 4);
temp[k] = '\0';
temp_int = *((uint32 *) &values[k][off]);
if(flag==0){
//write to HW regy
flag=1;
}
else{
//write to HW regx
flag=0;
}
}
'const char values' !!!!! –
頂部的一個問題是修改'const'字符串。如果您打算寫入字符串堆棧(自從'strcat(values,「0」)''以來顯然會這樣做),則在全局'values'中丟失'const'限定符。 – WhozCraig
將字符串最多添加到128個字符時,用盡了緩衝區......尾部\ 0應該是哪裏? –