打印字符串和各种整数变量C.

时间:2014-12-11 20:57:00

标签: c printf

我正在尝试为下一学期的课程学习C,并在python中有背景知识。我想使用printf()打印多个参数,包括字符串和各种数据类型对象。我的代码如下:

#include <stdlib.h>
#include <stdio.h>

int main(void)
{
    short int x = 1;
    unsigned short int y = 2;

    printf("Short int x: %", x);
    printf("Unsigned short int y: %", y);
}

我正在使用带有CDT插件的Eclipse,没有二进制文件或任何问题。

我查找了printf()的手册页但是遇到了%的问题。符号。有人可以详细说明printf的功能。

谢谢。

3 个答案:

答案 0 :(得分:4)

与Python不同,%运算符仅用作格式说明符,而不是字符串和参数之间的分隔。

#include <stdlib.h>
#include <stdio.h>

int main(void)
{
    short int x = 1;
    unsigned short int y = 2;

    printf("Short int x: %d ", x);
}

答案 1 :(得分:2)

使用C标准库:

#include <cstdio>

int main() {
    short int x = 1;
    unsigned short int y = 2;

    std::printf("Short int: %hi \n Unsigned short int: %hu \n", x, y);
    return 0;
}

格式字符串必须与变量类型相对应,并且还指示应如何格式化。 %hi用于short int%i用于int%u用于unsigned int ...请参阅here

答案 2 :(得分:1)

%符号在字符串中用作占位符,用于输出变量内容的位置。 %符号后面可以跟不同的标志或说明符,以帮助根据需要格式化输出。您的printf行应如下所示:

printf("Short int x: %d", x);

%d或%i表示变量的格式&#34; x&#34;是一个数字。以下是printf()函数的一些参考:

http://www.tutorialspoint.com/c_standard_library/c_function_printf.htm http://www.cplusplus.com/reference/cstdio/printf/