Tag: printf

评估报表

//prog1.c #include int f(int *a,int *b,int c) { if(c == 0) return 1; else { *a = *a + 1; *b = *b – 1; c = c – 1; return (*a + f(a,b,c) + *b); } } int main() { int a = 3,b = 3,c = 3; printf(“%d\n”,f(&a,&b,c)); return 0; } 我使用gcc和clang-3.5执行程序,发现输出= 16 […]

带行和列的乘法表

如何使乘法表看起来像这样: http : //i.imgur.com/rR6JSua.png ? 使用我的代码,它只有一列。 #include int main() { int i, j; for(i = 1;i <= 9;i++) { for(j = 1;j <= 9;j++) { printf("%d * %d = %d\n",i , j,i*j); } printf("%d * %d = %d\n",i , 10,i*10); printf("\n"); } return 0; }

终端上不打印单个字符

我有3个不同的进程,使用printf打印出单个字符。 但我在终端看不到它们。 当我添加换行符printf(“\n H”)以便每个字符都在一个新行上时,我可以看到它们。 如果没有换行符,为什么它不起作用?

printf命令导致seg错误?

当我尝试初始化一个大的双维字符数组时,它工作得非常好。 但是当我添加一个简单的打印命令时,它会给我一个分段错误。 有关为什么会发生这种情况的任何想法? #include int main(void) { printf(“!”); char f[10000][10000]; } 没有printf命令,或者即使printf命令没有打印任何内容(即“”),它也能正常工作。 如果我让它打印任何东西它会给出错误。 有帮助吗?

为什么的PRIx16不等于“hx”?

为什么在GCC下的C (和C ++ )中PRIx16 == “x” ? 我希望它是”hx” ,以便以下工作: #include int16_t v = -1; printf(“%04” PRIx16 “\n”, v); // prints ffffffff, not ffff

使用%s打印字符串会打印错误数据

我正在使用fread函数从文件读取字符串然后打印字符串。 我将字符串定义为具有LONGNUM大小(预定义值)的字符数组。 我每次读1个字节1个字节的大小。 当打印字符串时:printf(“读取的字符串是:%s \ n”,缓冲区); 输出是:读取的字符串是b我没有得到它,为什么在stringi的最后得到这个值? 当打印字符串时:printf(“读取的字符串是:%c \ n”,缓冲区[0]); 我得到没有值的写输出。 请解释我原因。 代码是 #include #define LONGNUM 1 void main(int argc,char *argv[]) { FILE * src; FILE * dst; int num; char buffer[LONGNUM]; // argc is the number of the elements in argv // the first argv element is the name of the program if(argc < […]

C中fprintf的通用参数

我正在编写一个函数,使用fprintf函数将数据保存到C中的文件中。 但是,这需要占位符作为其参数之一。 例如:%s表示字符串,%d表示整数…如果数据类型是通用的,我该怎么办,也就是说,使用此函数的程序员可以将我写入文件的变量的数据类型设置为任何内容他要? 谢谢!

C fprintf / fscanf优化大文件的速度

我合并了两个大的(每个8 GB左右)文件。 我尝试优化它,尽可能好。 void merge() { char *array[17]= {“q.out”,”b.out”}; // names of input files FILE *finpt1 = fopen(array[0],”r”), *finpt2 = fopen (array[1],”r”), *foutp = fopen(“final_.out”,”w”); u_int32_t a,b; fscanf(finpt1, “%u”, &a); fscanf(finpt2, “%u”, &b); int EOF1_my = 0, EOF2_my = 0; while (true) { if ( a>b ) { fprintf( foutp,”%u\n”, b); if ( fscanf(finpt2, “%u”, […]

strcpy和printf一个多维char数组C.

说我有一个arrays char messages[10][2][50]; strcpy的正确语法是什么,以便将数据放入其中一个字符串(大多数为50的内部字符数组),然后通过%s将其提供给printf的相应约定? 就此而言,我是否以正确的顺序声明了数组下标? 它是10批,成对(2)字符串。 每个字符串宽50个字符。 01{{50 chars},{50 chars}} 02{{50 chars},{50 chars}} … 09{{50 chars},{50 chars}} 10{{50 chars},{50 chars}} 各种互联网资源似乎与哪些下标省略冲突,无论我尝试什么似乎都会产生意想不到的结果。 你可以填写下面的空白吗? strcpy(message???, “Message 1 Part 1”); strcpy(message???, “m1 p2”); strcpy(message???, “m2 p1”); strcpy(message???, “m2 p2”); strcpy(message???, “m3 p1”); strcpy(message???, “m3 p1”); //So on… int i; for(i=0;i<10;i++) printf("%s, %s\n", message???, message???); 这样arrays具有并保持的结构: 01{{“Message 1 Part […]

有关lf说明符的scanf()和带有lf说明符的printf()的问题?

我正在学习C,我有以下代码: #include #include #include int main(int argc, char *argv[]) { double x; printf(“x = “); scanf(“%ld”, &x); printf(“x = %lf\n”, x); system(“PAUSE”); return 0; } (我使用的是Dev C4.9,Windows XP SP3) 当我运行上述程序并进入5.3; 程序打印x = 0.000000 谁能解释为什么会这样,拜托? 非常感谢。