为什么我会:
此错误控制到达非空函数的末尾[-Wreturn-type]
#import <Foundation/Foundation.h>
const int MAX = 4;
int main (int argc, const char * argv[])
{
char names[] = {
"Zara Ali",
"Hina Ali",
"Nuha Ali",
"Sara Ali",};
char *pointer[MAX];
for(int i=0; i<MAX; i++)
{
pointer[i] = &names[i];
}
for (i = 0; i < MAX; i++)
{
NSLog(@"Value of var[%d] = %s\n", i, *pointer[i] );
}
return 0;
}
答案 0 :(得分:0)
字符向量与字符串向量不同。 char
只有一个字符的空间。 char[]
是字符向量,而不是字符串向量。如果你这样初始化它:
char names[] = {
"Zara Ali",
"Hina Ali",
"Nuha Ali",
"Sara Ali",};
names变量将指针保持在第一个字符串中,它将仅使用第一个字符串进行初始化。所有下一个字符串都将被忽略。
我认为你正在尝试做这样的事情:
#import <Foundation/Foundation.h>
const int MAX = 4;
int main (int argc, const char * argv[])
{
NSString *names[] = {
@"Zara Ali",
@"Hina Ali",
@"Nuha Ali",
@"Sara Ali",};
NSString *pointer[MAX];
for(int i=0; i<MAX; i++)
{
pointer[i] = names[i];
}
for (int i = 0; i < MAX; i++)
{
NSLog(@"Value of var[%d] = %@\n", i, pointer[i] );
}
return 0;
}