我已经编写了一个C函数,其目的是记住字符'b'是否在char数组'a'中。我对指针和学习很陌生。根据我的理解(到目前为止我所读到的),'abc'的char []的第一个元素应该是'a'。尝试引用char中的第一个元素时C中的分段错误*
So if I reference:
*a, it should equal 'a'. Which I tested with:
printf("%s", (*a == 'a')? "true\n" : "false\n");
And it printed true, which is cool.
的问题是,如果我尝试:
printf(*a);
I get: Run Command: line 1: 8769 Segmentation fault: 11 ./"$2" "${@:3}"
我在做什么错在这里?我们的目标是在'abc'中获得对'a'的引用,并将它的相等性检查为'b'。如果不是,那么我想通过一个计数器增加'a'中的下一个字符,等等。
如何'的printf(*一);'有助于检查是否目标''一''等于''b''? – 2014-09-30 03:05:57
它不是我想看看如果printf(* a)会打印'a' – asdf 2014-09-30 03:13:54
启用(和读取)编译器警告。如果指示更严格,大多数编译器将会有所帮助。 – user2864740 2014-09-30 03:21:54