2015-09-28 2 views
0

Я хочу, чтобы передать массив символов, то есть в Строка в сКак вы передаете массив символов

int main() 
{ 
    const char c[]="Joseph"; 

    TestWord(&c,&c); 
    return 0; 
} 

int TestWord(char tiles[], char word[]) 
{ 
    return tiles; 
} 
+0

Массив символов ** не ** строка. Но строка ** хранится ** в массиве 'char'. Какой у Вас вопрос? – Olaf

+0

'const char * TestWord (const char tiles [], const char word [])', 'TestWord (c, c);' – BLUEPIXY

+0

@Olaf Как передать массив 'char' из 'TestWord' в 'main «? –

ответ

1
#include <stdio.h> 

char *TestWord(char tiles[], char word[]); 


int main() 
{ 
    char c[]="Joseph"; 
    char r; 


    r = *TestWord(c,c); 

    return 0; 
} 

char *TestWord(char tiles[], char word[]) 
{ 
    return tiles; 
} 

Вы пройти через массивы без &, как массивы не нужны те, поскольку они уже несколько похожи на указатели, точно так же, как вы бы scanf массив без символа &.

Не забывайте, что если вы возвращаете tiles, вы должны сохранить это в переменной.

+0

'r = * TestWord (c, c);' не кажется правильным. – ameyCU

1

Вы можете передать строку (массив символов) в C разными способами. Этот код передает строку a функции PRINT. Обратите внимание, что в этом методе базовый адрес массива отправляется в функцию.

#include<stdio.h> 

    void PRINT(char b[]) 
    { 
     printf("%s",b); 
    } 
    int main() 
    { 
     char a[]="hello"; 
     PRINT(a); 
     return 0; 
    } 
Смежные вопросы