尝试在变量之前和之后打印字符串.C是否有能力使用一个语句来显示此输出?
这有效:
float value = 5;
printf("\nThe value of %f", value);
printf(" is greater than zero.");
Run Code Online (Sandbox Code Playgroud)
这是愿望(一个声明):
float value = 5;
printf("\nThe value of %f", value, " is greater than zero.");
Run Code Online (Sandbox Code Playgroud)
(第二个字符串不显示)
怎么来printf("提示:")不会立即打印?我尝试过fflush(stdout)并放置一个\n,但这些都没有.它仅在"See you"打印时打印:
int main() {
char line[1025];
char command[80], argument[80];
char argv[3][80];
int i, pid;
*(argv[2]) = '\0';
while((fgets(line, 1024, stdin))) {
printf("prompt:");
line[1024] = '\0';
sscanf(line, " %s %s ", command, argument);
if(strcmp(command, "exit") == 0 || strcmp(command, "hastalavista") ==
0) {
printf("See you\n");
exit(0);
}
}
return 0;
}
Run Code Online (Sandbox Code Playgroud) 预测以下程序的输出.
#include <stdio.h>
int main()
{
printf(" \"TEST %% C %% PROGRAM\"");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
答案是"TEST%C%PROGRAM"
为什么?我理解%%意味着它会打印%,但是printf中的"\"\"是什么意思?
我正在进行游戏修改,但由于sprintf使用可能不正确,我的代码的一小部分似乎会导致游戏崩溃.
Menu& Menu::scroller(char** textArray, int* index, int numItems, bool fast) {
char buffer[60];
numItems--;
if (hovered()) {
lrInstruction = true;
fastScrolling = fast;
if (rightPress || (rightHold && fast)) {
playSound("NAV_UP_DOWN");
if (*index >= numItems) {
*index = 0;
}
else {
*index = *index + 1;
}
}
else if (leftPress || (leftHold && fast)) {
playSound("NAV_UP_DOWN");
if (*index <= 0) {
*index = numItems;
}
else {
*index = *index - 1;
}
}
}
if (hovered()) { …Run Code Online (Sandbox Code Playgroud) 我已阅读有关 Go fmt 包的文档。尽管如此,我还是不明白 Print、Fprint、Sprint、Printf、Fprintf 和 Sprintf 之间的区别。有人可以用外行的术语向我解释吗?
我有一些不会打印的数据....
echo工作,但不是printf
字符串中有数据,simplexml_load_string也不会解析字符串.
有一些二进制或不可见的字符,我看不到,无法获得序数值导致printf失败以及PHP中的大多数其他字符串函数.
显然这是一个编码问题,但是,我不知道如何找出它是什么,所以我可以正确编码/解码它.
$string = getStringFromDatabase();
printf($string);
Run Code Online (Sandbox Code Playgroud)
...
Nothing is displayed
Run Code Online (Sandbox Code Playgroud)
...
No errors, No Warnings, No Nothing
Run Code Online (Sandbox Code Playgroud)
显然那里有数据,我知道如果我循环遍历每一个字符,那么,我不会去那里.
[更新]这很奇怪,因为序数值超出了典型的ASCII范围.
ord($ buffer [$ i])= 1610
它是DLE和LF角色的组合.不知道它是如何到达那里或为什么.或者它应该是什么,任何一方的数据都是有效的,而且这个位置很奇怪.
想想<在这里冒犯char> 0,000
我刚刚开始学习C并想问一些非常基本的问题.我根本没有任何编程背景.我只是在教程的开头(http://www.cprogramming.com/tutorial/c-tutorial.html),并且有些事情没有解释.例如,在下面的介绍性简单程序中......
问题:为什么他使用"%d" - 为什么d而不是另一封信?我理解%是模数操作数,意思是余数,但为什么d?据我所知,stdio.h导入了一个要使用的术语库/术语表,比如printf等......是不是和%d相同?:
#include <stdio.h>
int main()
{
int this_is_a_number;
printf( "Please enter a number: " );
scanf( "%d", &this_is_a_number );
printf( "You entered %d", this_is_a_number );
getchar();
return 0;
}
Run Code Online (Sandbox Code Playgroud) # include <stdio.h>
double simpleInterest (double Princ, double Rate, int Time)
{
double value;
value = Princ*Rate*Time;
retrun value;
}
int main (int argc, char * argv [])
{
printf ("value is £%5.2\n", simpleInterest(100,0.05,1);
printf ("value is £%5.2\n", simpleInterest(1,0.01,10);
}
Run Code Online (Sandbox Code Playgroud)
我得到一个错误说预期';' 之前')'令牌,但我不明白我已经放了一个; 在每一行之后.我应该把别人放在其他地方吗?