void func(char a, int num)
{
printf("%c",a);
}
int main()
{
func("a", 6); //not func('a',6);
printf("\n");
func("b", 2); //not func('b',6);
}
ヌル文字を含むaとbのchar配列を渡していることを理解しています\0
。誰かがそれがどのように文字を印刷することになったのか、$
そして&
?
void func(char a, int num)
{
printf("%c",a);
}
int main()
{
func("a", 6); //not func('a',6);
printf("\n");
func("b", 2); //not func('b',6);
}
ヌル文字を含むaとbのchar配列を渡していることを理解しています\0
。誰かがそれがどのように文字を印刷することになったのか、$
そして&
?
それは、おそらくアドレスの一部であり、とのASCIIコード"a"
と一致するものを印刷することになる可能性があります。"b"
$
&
リテラル文字列へのポインタを渡していますが、文字が必要func
です。配列を受け取るように変更します。
void func(char *a, int num)
{
printf("%c",a[0]); // also note that to print a char you need to
// 'select' a char from the array
}
a
そうしないと、アドレスが最初のバイトとして持つものをASCII表現したcharに出力されることになります。