比如 char *s ;
s="12 34 56
78 a b c
9 10 d e
id=%11% end";
strlen(s)=11 表示s指針指向的字符串長度;
sizeof(s)=4 表示s指針佔多少字節!在32位系統中,指針佔4個字節;
sizeof(*s)=1 表示s指針指向的類型佔多少字節!即char類型佔多少字節,實際中char佔1個字節.
在實際情況中輸出的的id值是變化的,可能是兩位也可能是一位,我們想要提取出來id的值,首先找到兩個%所在的位置
char *p_head=0,*p_tail=0;
while(*s!='%') //將指針移動到id值開始的位置
{ s++; }
s++;
p_head=s;
int digit=0;
while(*s!='%') //將指針移動到id值結束的位置
{ s++; }
s--;
p_tail=s;
得到id的兩個數字是字符的格式
所以要轉化成數字
int idvalue=0;
if(digit==1)
idvalue=*p_head-'0'; //將字符型的數字轉化成數字型的數字
if(digit==2)
idvalue=(*p_head-'0')*10+(*p_tail-'0');