标签: printf

将变量传递给CakePHP中的__()函数

我本周末正在建立一个名为Pirates Vs的小项目.忍者与 僵尸VS. 机器人;)

目的是学习我之前从未使用过的Cake的一些方面 - 例如用于翻译的__()函数.

我有一条消息,我想按照"%s谢谢你"的方式输出,其中%s将是'Zombies'.如果我使用普通的PHP,我想我会使用:

$string = 'Zombies';
printf('The %s thank you', $string);
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用__()翻译功能时,我不知道如何使这项工作.

有人可以帮我吗?谢谢 :)

printf translation cakephp

5
推荐指数
2
解决办法
5290
查看次数

在定义中将#a字符串化,为什么不好

#include <stdio.h>
#define print_int(a) printf("%s : %d\n",#a,(a))
int main(void) {
    int y = 10;
    print_int(y);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我正在上课,并被要求解释为什么这很糟糕。所以我想字符串化#a是问题。它确实有效,那么为什么会有危险呢?

c printf c-preprocessor

5
推荐指数
1
解决办法
974
查看次数

PHP中的错误浮点格式化(sprintf,printf)

我正在调试PHP代码并发现以下内容:

$a = 111749392891;

printf('%f', $a);
111749392890.:00000

printf('%F', $a);
111749392890.:00000

printf('%F.2', $a)
111749392890.:00000.2

printf('%F0.2', $a);
111749392890.:000000.2

number_format($a, 2, '.','');
111749392891.00
Run Code Online (Sandbox Code Playgroud)

只有number_format()输出对我来说没问题.我错过了什么吗?我正在使用PHP 5.3.

php floating-point printf

5
推荐指数
1
解决办法
4355
查看次数

C中的sprintf,循环永不结束

我有循环问题,我不知道为什么但循环永远不会结束.

int main(int argc, char *argv[])
{
    int j;
    char s[2];
    for(j=1;j<=3;j++)
    {
        sprintf(s,"s%d",j);
        printf("%s", s);
    }
    system("PAUSE");    
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我认为循环应该在控制台中显示s1s2s3.

c printf

5
推荐指数
1
解决办法
1114
查看次数

关于printf参数的问题.C/C++

我们有以下代码片段:

char tab[2][3] = {'1', '2', '\0', '3', '4', '\0'};
printf("%s\n", tab);
Run Code Online (Sandbox Code Playgroud)

我不明白为什么我们在通话中没有收到错误/警告printf.我收到警告但没有错误,程序运行正常.它打印' 12'.
printf期待一个类型的参数char *,即指向char.所以,如果我声明char arr[3],那么arr是一个包含a的内存单元的地址char,所以如果我printf用它调用它会衰减指向char,即char *.
类似地,tab是包含3个字符的类型数组的存储器单元的地址,而存储器单元的地址包含char,因此tab将衰减char **,并且它应该是一个问题,因为printf期望a char *.

有人可以解释这个问题吗?

附录:

我得到的警告是:
a.c:6: warning: char format, different type arg (arg 2)

c c++ printf pointers matrix

4
推荐指数
1
解决办法
6330
查看次数

awk print vs printf函数

在awk有两个输出功能:print和printf.

  • 它们的实现是否awk完全不同?
  • 关于性能/速度有什么区别(如果可能的话 - 理论上,不仅仅是time命令行上的" ")?
  • 他们使用相同的系统调用吗?

io awk printf

4
推荐指数
1
解决办法
2762
查看次数

用printf打印char指针char数组?

我正在尝试打印整个单词,而不仅仅是第一个字母.我可以通过循环来做到这一点,但我认为有更好的方法.我正在四处搜索并看到他们将%S更改为%c的答案,但我已经在使用%c,因为它是一个字符数组.

char* words[] = {"my", "word", "list"};
printf("The word: %c",*words[2]);

Results:
The word: l
Run Code Online (Sandbox Code Playgroud)

arrays printf pointers character

4
推荐指数
2
解决办法
4万
查看次数

使用指针,数组不会在C中反向打印

我试图制作一个程序,将10个数字作为输入,并使用C中的指针以相反的顺序输出它们.

    #include<stdio.h>
    #define N 10

    int array[N]; //Global variable


    int main(void) {
    int j;
    int i;

    printf("Enter 10 numbers: ");

    for (i=0;i<N;i++) {
          scanf("%d",(array+(4*i)));    //Works
    }

    for (j=N-1;j<0;j--) {
       printf("%d",array[j]);  //Doesn't print, using *(array+j*4) doesn't 
                                                           //print  also
    }

    printf("\n");
    printf("%d\n",*(array)); //Works so scanf works
    printf("%d\n",*(array+4)); //Works so scanf works
    return 0;

    }
Run Code Online (Sandbox Code Playgroud)

我已经尝试为两个for循环创建一个单独的函数,但它仍然不起作用.我想知道为什么这个for循环不打印但是它下面的两个printfs打印出来.

编辑:

我的新代码是

    #include<stdio.h>
    #define N 10

    int array[N]; //Global variable


    int main(void) {
    int j;
    int i;

    printf("Enter 10 numbers: ");

    for (i=0;i<N;i++) {
          scanf("%d",(array+i));    //Works
    } …
Run Code Online (Sandbox Code Playgroud)

c arrays sorting printf pointers

4
推荐指数
1
解决办法
1171
查看次数

%.在s中的printf语句中的#s格式说明符

请解释输出.是什么%.#s在printf()意思?

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

int main(int argc,char*argv[]){

    char *A="HELLO";
    printf("%.#s %.2s\n",A,A);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

OUTPUT:

#s HE
Run Code Online (Sandbox Code Playgroud)

c string printf format-specifiers

4
推荐指数
1
解决办法
5875
查看次数

从自定义printf函数返回一个const char*

我写了一个自定义打印功能.我的问题是我需要返回一个,const char*因为这必须在另一个函数中使用.我根本不知道如何管理......

anotherFunction (const char* text /*Here*/, unsigned __int32 value, unsigned __int64 bigVal);

我知道以下示例/ s不能正常工作.这就是我到目前为止所尝试过的.

const char* CatchMessage (const char *message, ...)
{
    va_list  args;
    va_start (args, message);
    /*?*/
    va_end   (args);
    return message;
}
Run Code Online (Sandbox Code Playgroud)

我只是设法在cmd中获得正确的输出,但实际上我需要它作为返回值.

void CatchMessage (const char *message, ...)
{
    va_list  args;
    va_start (args, message);
    vfprintf (stdout, message, args);
    va_end   (args);
}
Run Code Online (Sandbox Code Playgroud)

呼叫:

CatchMessage ("Some Input %s and %d equals to %d", randString, randNumber, secRandNumber);
Run Code Online (Sandbox Code Playgroud)

应该返回:

"Some Input stuff and 12 equals to 6" …
Run Code Online (Sandbox Code Playgroud)

c c++ printf variadic-functions

4
推荐指数
2
解决办法
2157
查看次数