我是C的初学者,我想知道为什么这个程序不打印%符号?
代码是:
#include<stdio.h>
main()
{
printf("%");
getch();
}
Run Code Online (Sandbox Code Playgroud) 这在clang和gcc中没有警告地编译:
const char *foo = "\%";
Run Code Online (Sandbox Code Playgroud)
结果字符串与"%".
这个逃脱是什么?我在哪里可以找到完整的逃生清单?
我想也许是为了逃避有向图,但其他有向字符会产生警告(例如"\:").
谢谢你的帮助!
的输出
printf("%%%%%%%%");
Run Code Online (Sandbox Code Playgroud)
是
%%%%
Run Code Online (Sandbox Code Playgroud)
我打印了%8次,为什么输出只有4 %?
我们如何在objective-c中显示百分比字符?
我用这个:
[NSString localizedStringWithFormat:@"%.2f %", percentageQs]
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,它不承认%.以为我可以用它来逃避它\但我错了.
我写了一个C程序,它给出了以下编译错误.
rand_distribution.c:24:7: warning: unknown conversion type character ‘)’ in format [-Wformat]
Run Code Online (Sandbox Code Playgroud)
在这条线上
printf("%d: %d (%.2lf %) \n", i+1, frequencies[i],100.0 * frequencies[i] / TOTAL_COUNT);
My objective to get an output like this.
1: 333109 (16.66%)
2: 333113 (16.66%)
3: 333181 (16.66%)
4: 333562 (16.68%)
5: 333601 (16.68%)
6: 333434 (16.67%)
Run Code Online (Sandbox Code Playgroud)
也就是说'''之前的'%'应该按原样打印而不被解释.我怎么做到这一点?
#include <stdio.h>
#include <stdlib.h> // for rand(), srand()
#include <time.h> // for time()
const int TOTAL_COUNT = 2000000; // Close to INT_MAX
const int NUM_FACES = 6;
int frequencies[6] = …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用printf打印一个%符号。
我尝试过没有运气:
printf("\%");
Run Code Online (Sandbox Code Playgroud)
我敢肯定它真的很简单,但是我才刚开始C。
谢谢。
可能重复:
如何转义C的printf中的%符号?
这必须是一个简单的问题,但我无法在我的书或网上找到答案; 如何在C中打印'%'?
例如:
printf("A: %.2f%", pc);
Run Code Online (Sandbox Code Playgroud)
...失败,编译器抱怨转换无效.当然,一个简单的方法是;
printf("A: %.2f%c", pc, '%');
Run Code Online (Sandbox Code Playgroud)
但它相当不优雅......
我在网上看到我发现%没有转义序列,我认为\%会起作用,但确实如此.
w的类型为http.ResponseWriter
这可以:
fmt.Fprintf(w, statusPercentage + " " + mostUpToDateStatusDownloaded + "/"+ mostUpToDateStatusOverallData)
Run Code Online (Sandbox Code Playgroud)
输出:100 488 MB/488 MB
这会导致一个问题:
fmt.Fprintf(w, statusPercentage + "% " + mostUpToDateStatusDownloaded + "/"+ mostUpToDateStatusOverallData)
Run Code Online (Sandbox Code Playgroud)
输出:100%!(MISSING)MB/488 MB