Pointers
返回
用數(shù)組名和指針賦值程序
#include
int main(void)
{
char ss[] = "xyzabcde";
char *p = ss; //數(shù)組的地址設(shè)定
int i;
for (i=0; i<=7; i++)
putchar(ss[i]);
putchar('\n');
for (i=0; i<=7; i++)
putchar(p[i]);
putchar('\n');
for (i=0; i<=7; i++)
putchar(*(ss+i));
putchar('\n');
for (i=0; i<=7; i++)
putchar(*(p+i));
putchar('\n');
return 0;
}
/*
程序執(zhí)行結(jié)果(相同)
xyzabcde
xyzabcde
xyzabcde
xyzabcde
*/
判斷數(shù)值正負的程序
#include
int (*get_sign)(); //函數(shù)的指針宣言
int iget_sign(int *a); // 返回整數(shù)的原型(ProtoType)
int fget_sign(float *a); // 返回浮動小數(shù)點的原型(ProtoType)
int main(void)
{
int sgn, idt = 80;
float fdt = -3.14;
get_sign = iget_sign;
sgn = get_sign(&idt);
printf("data:%d sgn:%d\n", idt, sgn);
get_sign = fget_sign;
sgn = get_sign(&fdt);
printf("data:%f sgn:%d\n", fdt, sgn);
return 0;
}
int iget_sign(int *a)
{
if (*a == 0) return 0;
else if (*a > 0) return 1;
else return -1;
}
int fget_sign(float *a)
{
if (*a == 0) return 0;
else if (*a > 0.0) return 1;
else return -1;
}
/*
運行結(jié)果
data:80 sgn:1
data:-3.140000 sgn:-1
*/
返回
东阳市|
盖州市|
边坝县|
商水县|
竹山县|
万载县|
唐河县|
巫山县|
剑河县|
凌云县|
上杭县|
宾川县|
信丰县|
武强县|
柯坪县|
扎囊县|
甘南县|
会泽县|
宿松县|
安宁市|
榆社县|
怀化市|
满洲里市|
武定县|
太仆寺旗|
蓝山县|
灵宝市|
堆龙德庆县|
孝义市|
高唐县|
清镇市|
洱源县|
遵义县|
登封市|
阳新县|
牡丹江市|
贡觉县|
祁东县|
东兰县|
从化市|
揭阳市|