问答详情
源自:3-2 算术运算符

我想知道我这个代码为什么不能够输出x%y?

?????????

http://img1.mukewang.com/5aa23cbb00011db811050782.jpg

提问者:捷者 2018-03-09 15:50

个回答

  • qq_我的祖坟在发光_03337296
    2018-03-09 16:06:45
    已采纳

    % 单列出来就是取模运算符
    %%没有特殊含义

    但,在格式化IO语句,如Scanf/Printf/Format等之中,百分号是特殊格式化字符
    %n 回车
    %d 输出整数
    %% 输出一个百分号
    还有很多,可以参考格式化语句的说明

  • qq_我的祖坟在发光_03337296
    2018-03-09 16:17:49

    其实前面没必要去纠结他的具体含义,后面学了指针会很清楚的

  • qq_我的祖坟在发光_03337296
    2018-03-09 16:16:35

    %n与其他格式说明符号不同。%n不向printf传递格式化信息,而是令printf把自己到该点已打出的字符总数放到相应变元指向的整形变量中。因此%n对于的变元必须是整形指针。

    对printf调用返回之后,%n对于变元指向的变量中将包含有一个整数值,表示出现%n时已经由该次printf调用输出的字符数。

    printf("this%n is a test\n",&count);//调用后count为4