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 */
返回
苏尼特左旗| 尼勒克县| 苍溪县| 榆林市| 遵义县| 息烽县| 牟定县| 三明市| 深州市| 大埔县| 阜平县| 遂平县| 阳春市| 德保县| 巧家县| 密山市| 诸暨市| 登封市| 义马市| 兴山县| 聊城市| 大埔县| 连城县| 常州市| 磐石市| 平遥县| 沿河| 大厂| 班戈县| 建平县| 股票| 明星| 茶陵县| 永康市| 台北县| 上杭县| 射洪县| 翼城县| 邵东县| 台北县| 林西县|