프로그래밍

c언어 문자열 배열 함수 질문

#include<stdio.h>
#include<stdlib.h>
#include<time.h>


#define SIZE_arr 20

void New_Start(char Foundation_arr[10][SIZE_arr][SIZE_arr]);
void ARR_OUT(char Foundation_arr[10][SIZE_arr][SIZE_arr]);
void goal_location(char Foundation_arr[10][SIZE_arr][SIZE_arr]);
void first_location(char Foundation_arr[10][SIZE_arr][SIZE_arr]);

int main()
{
    char  Foundation_arr[10][SIZE_arr][SIZE_arr];

    New_Start(Foundation_arr);
    first_location(Foundation_arr);
    goal_location(Foundation_arr);

    ARR_OUT(Foundation_arr);

    return 0;
}

void New_Start(char Foundation_arr[10][SIZE_arr][SIZE_arr])// 초기 배열 설정
{
    for (int i = 0; i < SIZE_arr; i++)
        for (int s = 0; s < SIZE_arr; s++)
            Foundation_arr[10][i][s] = 'O';
}

void ARR_OUT(char Foundation_arr[10][SIZE_arr][SIZE_arr])// 2중 배열 출력
{
    for (int i = 0; i < SIZE_arr; i++)
    {
        for (int s = 0; s < SIZE_arr; s++)
            printf("%c", Foundation_arr[10][i][s]);
        printf("\n");
    }
}

void goal_location(char Foundation_arr[10][SIZE_arr][SIZE_arr])// 목표물 출력 a to b
{

    srand(time(NULL));
    int x = rand() % SIZE_arr; //0~40
    int y = rand() % SIZE_arr;

    Foundation_arr[10][y][x] = (char*)" B ";
}
void first_location(char Foundation_arr[10][SIZE_arr][SIZE_arr])
{
    int x = SIZE_arr / 2;
    int y = SIZE_arr / 2;
    
    Foundation_arr[10][y][x] = (char*)"tt";
}

 

전체 코딩이구요

 

제가 궁금한 것은

 

void first_location(char Foundation_arr[10][SIZE_arr][SIZE_arr])
{
    int x = SIZE_arr / 2;
    int y = SIZE_arr / 2;
    
    Foundation_arr[10][y][x] = (char*)"tt";
}

 

이부분인데

 

 Foundation_arr[10][y][x] = "a";로 했다가 (char*)"a"로 바꿔봤는데 안되서요;;;;

 

char*에서 const char로 못바꾼다고 c2440이 뜨는데 흠 포인터 문자열 그거 같은데 해결 방법이 었을까요?

 

이걸 어떻게 할 수 있을 까요?

4개의 댓글

2020.04.05

Foundation_arr[10][y][x]는 char 타입이자너

큰따옴표가 아니라 작은따옴표를 써야됨

Foundation_arr[10][y][x] = 'a'; 이렇게

0
2020.04.05
@신라면순한맛

아 그 보기 편하게 할려고 했는데 그냥 printf로 하는게 좋을 듯 ㄳㄳ 근데

 

Foundation_arr[10][y][x] = "hi"는 불가능 할까요?

0
2020.04.05
@클로로프렌

Foundation_arr[10][y][x]는 타입이 char라서 문자열(const char *)을 대입할수가 없음

그리고 애초에 c언어는 대입연산자로 문자열을 대입하는걸 지원안함

strcpy나 memcpy쓰거나 for문 돌려야됨

0
2020.04.05
@신라면순한맛

아하 ㄳㄳ 이거 생각하고 있었는데 역시군요!

감사합니다

0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
180462 [컴퓨터] 구글에서만 검색창 방향키가 안먹음 뒷북 0 1 시간 전 17
180461 [모바일] 횽들 어거좀 봐줘 3 부자가될개붕이놈들 0 1 시간 전 44
180460 [컴퓨터] 선생님들 혜안을 구합니다 7 빠른인정빌런 0 2 시간 전 66
180459 [모바일] 당근으로 갤럭시탭 s9 울트라 사기로했는데 1 말이야방구야 0 3 시간 전 100
180458 [모바일] 갤럭시 동영상 자르기 안되는 이유 아시는분?? 3 일토준지 0 3 시간 전 63
180457 [프로그래밍] 코린이 ㅅㅂ 뭐가 문젠지 모르겠어요 2 집에가게해줘 0 4 시간 전 167
180456 [컴퓨터] 해피해킹 키보드 회사서 못 쓰는 이유 2 닉네임변경후13일차 0 4 시간 전 192
180455 [컴퓨터] 컴 바꿧듬 10 탑똥 1 5 시간 전 99
180454 [컴퓨터] CPU 불량이 맞는가!? 13 꺄꺄룽 0 5 시간 전 136
180453 [정보] 최근에 꽤 핫했던 레노버 y700 2세대 정보 모음입니다. 9 SeraMint 2 5 시간 전 147
180452 [잡담] 님들 컴터 조립할 때 ㅈ같았던 경험들 있음? 3 UBCS 0 6 시간 전 97
180451 [컴퓨터] LG OLED티비쓰는데 HDMI로 컴연결해서 쓰거든 11 뚱땡보 0 6 시간 전 86
180450 [잡담] DDR5 삼성 시금치램에 방열판 달고싶은데 10 내일까지 0 7 시간 전 106
180449 [컴퓨터] 3.5mm 헤드셋을 연결했는데 마이크에서 스피커소리가 나옴..... 12 아건 0 8 시간 전 85
180448 [컴퓨터] 모니터 화이트스크린 심심할땐개드립 0 8 시간 전 40
180447 [모바일] 유튜브 뮤직 왜 안되는지 아는 사람?? 8 티탄즈 0 9 시간 전 122
180446 [컴퓨터] 10년된 컴터 이제 보내주려하는데 이거 살만한가여? 12 응가쌀땐폰필수 0 10 시간 전 157
180445 [컴퓨터] 맥북 중고로 사려는데 이거 가격 얼마가 적당해??? 3 갈비찜존맛 0 11 시간 전 111
180444 [프로그래밍] Dear Imgui 라고 아시나요? 2 년째모쏠 0 11 시간 전 130
180443 [컴퓨터] 컴맹 노트북에 ssd추가 장착 질문점 4 바퀴 0 18 시간 전 141