Pointers

返回

用數(shù)組名和指針賦值程序

#include <stdio.h> 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 <stdio.h> 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 */
返回
东阳市| 盖州市| 边坝县| 商水县| 竹山县| 万载县| 唐河县| 巫山县| 剑河县| 凌云县| 上杭县| 宾川县| 信丰县| 武强县| 柯坪县| 扎囊县| 甘南县| 会泽县| 宿松县| 安宁市| 榆社县| 怀化市| 满洲里市| 武定县| 太仆寺旗| 蓝山县| 灵宝市| 堆龙德庆县| 孝义市| 高唐县| 清镇市| 洱源县| 遵义县| 登封市| 阳新县| 牡丹江市| 贡觉县| 祁东县| 东兰县| 从化市| 揭阳市|