2017-05-27 63 views
0

首先,我贴的源代码:怎样的printf%C真的在C语言编程工作

#include <stdio.h> 
int main() 
{ 
    printf("%c",'abcdefg'); 
    return 0; 
} 

我知道使用%c打印一个字,但我想知道这个源代码为什么终端打印字符串的最后一个字符。

感谢大家好,这里是类似的问题: Please explain this result please. printf("%c", 'abcd')

+3

该代码无效。打开你的编译器警告。 –

+0

它主要由一个随机错误编译'g' ......它使用字符串指针信息,将指针数据转换为'char'并打印出它的值。 – Myst

+0

[C++中使用多个字符时单引号做什么?](https://stackoverflow.com/q/7459939/995714) –

回答

3

%C只能打印一个字符,你应该使用%S代替。 单引号表示单个字符,双引号表示字符串。 所以你应该写printf("%s","abcdefg");

+0

建议的方式重复关闭我编辑问题,现在可以帮助我解决问题了吗? – beaTc