프로그래밍

 3198, 1/160 회원가입  로그인  
   그니
   http://--
   전역변수때매 미치겟어요 도와주세요 ㅋㅜㅜ

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=6415 [복사]


일단은 word목록에 있는 문자열들을 쭉 출력한뒤에
입력받는 input과 word목록에있는 단어들중 하나가 같다면 word목록에있는 단어를
공백으로 바꾸고 다시 word목록을 출력하는 프로그램입니다.
한컴타자연습에서 자원캐기를 생각하시면됩니다.



#include <stdio.h>
#include <windows.h>
#include <string.h>

int i;
char *input[20];
char *word[] = {"고드름","소나기","안개비","산성비"};

void refresh()
{

        system("cls");
        for(i=0;i<4;i++)
        {
                printf("%s\n",word[i]);
        }
}




void word_del(char *input, char *word)
{

        for(i=0;i<4;i++)
        {
                if(strcmp((char *)input,(char *)word[i])==0)
                {        
                        strset((char *)word[i], ' ');
                        refresh();
                          
                }
        }
}

void main()
{


        refresh();
        
        printf("글자 입력 : ");
        scanf("%s",input);
        
        
        word_del((char *)input,(char *)word);


}

컴파일오류는 안뜨는데 실행했을때 word_del 함수가는부분에서 오류뜨면서 디버그 어쩌구....
전역변수를 꼭 써야겟는데... 어떻게 해야될지... 깨우침좀 주세요ㅠ
하두 오류가 떠서 (char *)이런것들 다니까 해결되긴하는데 이게 왜붙고 왜해야하는지도모르겟고...

!!구글링해서 찾은 결론이 전역변수로있는 문자열은 못바꾼다는데... const를 붙여야한다고막...
근데 어떻게 붙여야하는지도모르겟고... 부탁드립니다;;

너무복잡합니다 ㅠ 부탁드려요

  Hit : 5944     Date : 2013/11/18 05:17



    
U_SoRang #include <stdio.h>
#include <windows.h>
#include <string.h>

void refresh();
void word_del(char_input);

int i;

char *word[] = {"고드름","소나기","안개비","산성비"};

void main()
{
char *input[20];

refresh();

printf("글자 입력 : "); scanf("%s",input);

word_del(input);
}

void refresh()
{
system("cls");
for(i=0;i<4;i++) printf("%s ",word[i]);
puts("");
}

void word_del(char_input)
{
for(i=0;i<4;i++)
{
switch(strcoll(word[i], char_input))
{
case 0: word[i] = NULL; refresh(); break;
default: refresh; break;
}
}
}
2013/11/18  
그니 u_sorang//음... 컴파일 오류가떠요...
error C2065: 'char_input' : undeclared identifier
error C2182: 'word_del' : illegal use of type 'void'
error C2064: term does not evaluate to a function
error C2448: '<Unknown>' : function-style initializer appears to be a function definition
2013/11/18  
MainThread word_del의 매개변수를 바꿔보세요

char input[20];
char *word[20] = {"고드름","소나기","안개비","산성비"};

void refresh()
{
int i;

for(i=0;i<4;i++)
{
printf("%s\n",word[i]);
}
}




void word_del(char *input, char *word[20])
{

for(int i=0; i<4; i++)
{
if(strcmp(input,word[i])==0)
{
word[i]=NULL;
}
}
refresh();

}

void main()
{
refresh();

//printf("글자 입력 : ");
//scanf("%s",input);
strcpy(input,"소나기");

word_del(input,word);
}

From MainThread
2014/05/24