ABCDEFGHIJKLMN
80000
-/23+
原裝現(xiàn)貨
ABCDEFGHIJKLMN
80000
-/23+
原裝現(xiàn)貨
ABCDEFGHIJKLMN
5000
SOP14/2014+
原裝,配單能手
ABCDEFGHIJKLMN
5000
SOP14/2014+
原裝正品,配單能手
ABCDEFGHIJKLMN
3588
-/-
原裝 部分現(xiàn)貨量大期貨
ABCDEFGHIJKLMN
80000
-/2024+
原裝現(xiàn)貨
ABCDEFGHIJKLMN
65286
-/21+
全新原裝現(xiàn)貨,長期供應(yīng),免費送樣
ABCDEFGHIJKLMNOPQRSTUVWXYZ
3588
-/-
原裝 部分現(xiàn)貨量大期貨
輸出。用blowfish算法加密信息需要2個過程,即密鑰預(yù)處理和信息加密。 以密鑰預(yù)處理為例,這時,blowfish算法的源密鑰——pbox和sbox是固定的。要加密一個信息,需要自己選擇一個。key,用這個key對pbox和sbox進行變換,得到下一步信息加密所需的key_pbox和keg_sbox。具體的變換算法如下: ①用sbox填充key_sbox。 ②用自己選擇的key以8個一組去異或pbox,用異或的結(jié)果填充key_pbox。key可以循環(huán)使用。例如,選的key是”abcdefghijklmn”,則異或過程為 keg_pbox[o]=pbox[o]abcdefgh keyr_pbox[1]=pbox[1]ijklmnab ………… 如此循環(huán),直到key_box填充完畢。 ③用bf_en加密一個全“o”的64位信息,用輸出的結(jié)果替換key__pbox[o]和key_pbox[1]。此時,i=o。 ④用bf_en加密替換后的key_pbox[i]和key_phox[i+1],用輸出替代key_pbox[i+2]和key_phox[i+3]。
求助:avr-gcc里stdio.h,庫函數(shù) printf_p,sprintf_p怎么使用? #include <stdint.h> #include <stdio.h>#include <avr/pgmspace.h> uint8_t tab[32]; const uint8_t tab0[30] ={"abcdefghijklmn"}; //14個字母 const uint8_t tab1[30] progmem ={"abcdefghijklmn"}; //14個字母 int main() { const uint8_t * tab2=pstr("abcdefghijklmn"); uint16_t n0,n1,n2; n0=sprintf (tab,"%s",tab0); //執(zhí)行完后,n0=14 n1=sprintf_p(ta
指針訪問結(jié)構(gòu)成員的正確方法應(yīng)該是象例十二中使用指針ptr的方法。 指針和函數(shù)的關(guān)系 可以把一個指針聲明成為一個指向函數(shù)的指針。intfun1(char*,int); int(*pfun1)(char*,int); pfun1=fun1; .... .... inta=(*pfun1)("abcdefg",7);//通過函數(shù)指針調(diào)用函數(shù)。 可以把指針作為函數(shù)的形參。在函數(shù)調(diào)用語句中,可以用指針表達式來作為實參。 例十三: intfun(char*); inta; charstr[]="abcdefghijklmn"; a=fun(str); ... ... intfun(char*s) { intnum=0; for(inti=0;i{ num+=*s;s++; } returnnum;} 這個例子中的函數(shù)fun統(tǒng)計一個字符串中各個字符的ascii碼值之和。前面說了,數(shù)組的名字也是一個指針。在函數(shù)調(diào)用中,當把str作為實參傳遞給形參s后,實際是把str的值傳遞給了s,s所指向的地址就和str所指向的地址一致,但是str和s各自占用各自的存儲空間。在函數(shù)體內(nèi)對s進行自加1運算,并不意味著同時對str進行
, 'd', 'e', 'f', 'g'};char a2[] = {'h', 'i', 'j', 'k', 'l', 'm', 'n'};如果:sprintf(s, "%s%s", a1, a2); //don't do that!十有八九要出問題了。是否可以改成:sprintf(s, "%7s%7s", a1, a2);也沒好到哪兒去,正確的應(yīng)該是:sprintf(s, "%.7s%.7s", a1, a2);//產(chǎn)生:"abcdefghijklmn"這可以類比打印浮點數(shù)的”%m.nf”,在”%m.ns”中,m 表示占用寬度(字符串長度不足時補空格,超出了則按照實際寬度打?。?,n 才表示從相應(yīng)的字符串中最多取用的字符數(shù)。通常在打印字符串時m 沒什么大用,還是點號后面的n 用的多。自然,也可以前后都只取部分字符:sprintf(s, "%.6s%.5s", a1, a2);//產(chǎn)生:"abcdefhijkl"在許多時候,我們或許還希望這些格式控制符中用以指定長度信息的數(shù)字是動態(tài)的,而不是靜態(tài)指