【发布时间】:2015-12-27 19:15:17
【问题描述】:
我试图让我的程序将用户名作为输入,然后打印出该名称的首字母。即汤米布朗-> tb
到目前为止,我所拥有的是:
int main (void)
{
char scroll[100] = {"kang cheng junga"};
printf ("%c\n", *(scroll+2));
for (int i=0; i<100; i++)
{
if (*(scroll+i)=" ")
{
printf (*(scroll+i+1));
}
}
我不断收到此错误:
错误:指向整数的指针不兼容 从 'char [2]' 分配给 'char' 的转换
[-Werror,-Wint-conversion] if (*(scroll+i)=" ")
错误:使用赋值的结果作为 不带括号的条件
[-Werror,-W括号] if (*(scroll+i)=" ")
谁能告诉我我是怎么搞砸的?我很难理解 * 和 & 在 C 中的作用。我是初学者,所以我真的不知道自己在做什么。
【问题讨论】:
-
基本的东西:
=应该是== -
if (*(scroll+i)=" ") ==> if (*(scroll+i)==' ') 比较字符而不是字符和字符串。
标签: c arrays pointers error-handling