为什么输出只是字符' u'

时间:2017-10-27 10:53:04

标签: c

我是C语言的新手。下面发生了什么?输出只是" u"

#include<stdio.h>

void main()
{
    printf("%c\n",'pasundu');
}

1 个答案:

答案 0 :(得分:1)

您将 @Override public void onDetach() { try { Field childFragmentManager = android.app.Fragment.class.getDeclaredField("mChildFragmentManager"); childFragmentManager.setAccessible(true); childFragmentManager.set(this, null); } catch (NoSuchFieldException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } super.onDetach(); } 放在%c语句中,告诉编译器您要打印单个字符。

你还在字符序列printf周围使用单引号' - 你在这里有一个多字符文字。多字符文字具有实现定义的值 - 在这种情况下,编译器看起来正在使用文字中的最后一个字符。

要解决此问题,我假设您要将pasundu显示为字符串:

pasundu

请注意,我还更改了#include <stdio.h> int main() { printf("%s\n","pasundu"); } 的返回类型,因为允许void,但不要求所有编译器都支持。