Tag: printf

为什么printf需要强制转换?

要打印一些类型off_t ,建议使用以下代码: off_t a; printf(“%llu\n”, (unsigned long long)a); 为什么格式字符串不够用? 如果没有铸造会有什么问题?

像“1 $”这样的位置参数如何与printf()一起使用?

通过man我发现 printf(“%*d”, width, num); 和 printf(“%2$*1$d”, width, num); 是等价的。 但IMO的第二种风格应该是: printf(“%*d”, num, width); 然而通过测试似乎man是对的; 为什么?

在C中如何打印在shell中重定向为输入的文件的文件名

$cc ac $./a.out < inpfilename 我想在stdout上打印inpfilename。 我怎么做 ? 我在这里先向您的帮助表示感谢…

C中printf()的格式说明符%a

我正在阅读一本C语言书,它说%f, %e, %g, %a是用于float和double数据类型的printf字符。 目前我完全可以理解%f, %e, %g 。 我什么时候需要使用%a来打印float和double类型的数据? 你能告诉我一个例子吗?

使用printf的Linux的gotoxy()实现

我正在为gcc编译器寻找gotoxy()的替代品并找到了 – void gotoxy(int x,int y) { printf(“%c[%d;%df”,0x1B,y,x); } 我想知道它是如何运作的,我的意思是我们什么时候使用[和; 在printf里面, 0x1B在那里做什么以及如何用这段代码将光标带到行/列? 我从来没有在书中看到过这种类型的printf练习,所以它会很棒如果你能指出我可以找到关于printf的这种用途的链接。

Sprintf分段错误

numCheck是介于1-1000之间的数字。 只有当我在charcheck中收集sprintf的结果时,此代码才会给我一个段错误。 如果我只是在不使用结果的情况下使用sprintf,我就不会出现seg错误。 这里发生了什么事? char * numString; int charcheck = sprintf(numString, “%d”, numCheck);

在C中显示数字的二进制表示?

可能重复: 是否有printf转换器以二进制格式打印? 还在学习C和我在想: 给定一个数字,是否可以执行以下操作? char a = 5; printf(“binary representation of a = %b”,a); > 101 或者我是否必须编写自己的方法来转换为二进制?

指针在printf()中不起作用

打印指针时遇到问题。 每次我尝试编译下面的程序时,我都会收到以下错误: pointers.c:11: warning: format ‘%p’ expects type ‘void *’, but argument 2 has type ‘int *’ 我显然在这里遗漏了一些简单的东西,但是从我见过的其他类似代码的考试中,这应该是有效的。 这是代码,任何帮助都会很棒! #include int main(void) { int x = 99; int *pt1; pt1 = &x; printf(“Value at p1: %d\n”, *pt1); printf(“Address of p1: %p\n”, pt1); return 0; }

printf语句是如何解释的?

GCC编译器如何解释以下行: printf(“HELLO”); 我想知道这个,因为当我运行以下程序时: main() { printf(5+”Good Morning”); } 该程序正在打印: Morning 为什么编译器从第六个字符开始打印?

创建导致字符串的FILE *流

我正在寻找一种方法将FILE *传递给某个函数,以便函数可以使用fprintf写入它。 如果我希望输出在磁盘上的实际文件中出现,这很容易。 但我想要的是将所有输出作为字符串( char * )。 我喜欢的那种API是: /** Create a FILE object that will direct writes into an in-memory buffer. */ FILE *open_string_buffer(void); /** Get the combined string contents of a FILE created with open_string_buffer (result will be allocated using malloc). */ char *get_string_buffer(FILE *buf); /* Sample usage. */ FILE *buf; buf = open_string_buffer(); […]