您的位置:首页 > 其它

C printf函数中参数执行顺序

2014-11-13 11:54 369 查看
例子一 、
#include <stdio.h>

int main(void) {

    int i=1;

    printf("%d^2 = %d\n", (i++)*(i++), (i-1));

    printf("%d\n", i);

    i = 1;

    printf("%d^2 = %d\n", (i-1), (i++)*(i++));

    printf("%d\n", i);

    return 0;

}

输出结果:
1^2 = 0

3

2^2 = 1

3

例子二、
#include <stdio.h>

int main(void) {

    int i=1;

    while(i<=5)

        //printf("%d^2 = %d\n", (i-1), SQ(i++));

        printf("%d^2 = %d\n", SQ(i++), (i-1));

    return 0;

}

int SQ(int y) {

    return ((y)*(y));

}
输出结果:
1^2 = 0

4^2 = 1

9^2 = 2

16^2 = 3

25^2 = 4

#include <stdio.h>

int main(void) {

    int i=1;

    while(i<=5)

        printf("%d^2 = %d\n", (i-1), SQ(i++));

        //printf("%d^2 = %d\n", SQ(i++), (i-1));

    return 0;

}

int SQ(int y) {

    return ((y)*(y));

}
输出结果:
1^2 = 1

2^2 = 4

3^2 = 9

4^2 = 16

5^2 = 25

总结:
printf("输出样式", 表达式1, 表达式2, ... ,表达式n),执行顺序如下:
首先执行表达式n,...,执行表达式2,最后执行表达式1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  printf c