文字列リテラルがconst char形式でありそれをchar形式の変数に入れようとしていておかしくなっているらしいのですが、文字列リテラルの内容をchar型変数に格納する記述は他の場所でも用いており、そちらでは特にエラーは発生していないのでこれ自体が原因とは思えません。
このエラーは何故起きていて、どうしたらエラーが起きないようにできるでしょうか?
どなたかよろしくお願いします。
#include "DxLib.h"
struct LetPart{//テキストパーツ
char Type[5][3];
};struct LetPart Part;
void ini(){
Part.Type[0]="【";
Part.Type[1]="族";
Part.Type[2]="・";
Part.Type[3]="/";
Part.Type[4]="】";
};
void test(){
char rewrite[]="pic/illu/";
int NameCol = GetColor(25,25,25);//黒
int TypeFont = CreateFontToHandle("AR P隷書体M",9,-1,DX_FONTTYPE_ANTIALIASING);
DrawStringToHandle(2,5,rewrite,NameCol,TypeFont);
}
void CardLetMake(){
char Write[4096]="";//記入用文字列
int NameCol = GetColor(25,25,25);//黒
int TypeFont = CreateFontToHandle("AR P隷書体M",9,-1,DX_FONTTYPE_ANTIALIASING);
DrawStringToHandle(2,5,rewrite,NameCol,TypeFont);
strcpy(Write,Part.Type[0]);
strcat(Write,Part.Type[1]);
strcat(Write,Part.Type[2]);
strcat(Write,Part.Type[4]);
DrawStringToHandle(23,295,Write,NameCol,TypeFont);
}
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
ChangeWindowMode(TRUE); // ウィンドウモードに設定
if( DxLib_Init() == -1 ){return -1 ;}//DXライブラリ初期化処理 エラーが起きたら直ちに終了
SetDrawScreen( DX_SCREEN_BACK ); //描画先を裏画面に設定
ini();
CardLetMake();
ScreenFlip(); //裏画面を表画面に反映
WaitKey() ; // キー入力待ち
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
1>main.cpp
1>c:\users\visual studio 2008\projects\cardmaker\main.cpp(6) : error C2440: '=' : 'const char [3]' から 'char [3]' に変換できません。
1> この変換が可能なコンテキストはありません。
1>c:\users\visual studio 2008\projects\cardmaker\main.cpp(7) : error C2440: '=' : 'const char [3]' から 'char [3]' に変換できません。
1> この変換が可能なコンテキストはありません。
1>c:\users\visual studio 2008\projects\cardmaker\main.cpp(8) : error C2440: '=' : 'const char [3]' から 'char [3]' に変換できません。
1> この変換が可能なコンテキストはありません。
1>c:\users\visual studio 2008\projects\cardmaker\main.cpp(9) : error C2440: '=' : 'const char [3]' から 'char [3]' に変換できません。
1> この変換が可能なコンテキストはありません。
1>c:\users\visual studio 2008\projects\cardmaker\main.cpp(10) : error C2440: '=' : 'const char [3]' から 'char [3]' に変換できません。
1> この変換が可能なコンテキストはありません。