DXライブラリでの改行

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
あーけお

DXライブラリでの改行

#1

投稿記事 by あーけお » 14年前

DXライブラリで改行するにはどうすれば良いのですか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: DXライブラリでの改行

#2

投稿記事 by softya(ソフト屋) » 14年前

残念ながら無いので自分で改行を制御します。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

あーけお

Re: DXライブラリでの改行

#3

投稿記事 by あーけお » 14年前

どのようにすればよいのでしょうか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: DXライブラリでの改行

#4

投稿記事 by softya(ソフト屋) » 14年前

strtok関数などで改行コードを区切りとして文字列を分解して、それぞれの文字列毎に行を変えてやることで実現可能です。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

あーけお

Re: DXライブラリでの改行

#5

投稿記事 by あーけお » 14年前

コード:

 
#include "DxLib.h"
#include "stdio.h"

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ){
	if(DxLib_Init()==-1){
		return -1;
	}

	int a[10][15]={
		{1, 1, 1, 1 ,2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4},	// 
		{1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5},	//
		{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},	//
		{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},	//
		{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},	//
		{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},	//
		{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},	//
		{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},	//
		{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},	//
		{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},	//
		};
	int x=0;
	int y=0;
	int Cr=GetColor(255, 255, 255);

	for(x=0; x<10; x++){
		for(y=0; y<15; y++){
			DrawFormatString("%d", "%d", Cr, "%d\n",250+1*x ,240-32*y ,a[x][y]) ; //①
		}
		printf("\n");
	}

	WaitKey();
	DxLib_End() ;
	return 0 ;		
}


コード中の①のようにして、配列を表示させようとしてもできないのですがどのように直すべきですか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: DXライブラリでの改行

#6

投稿記事 by softya(ソフト屋) » 14年前

引数で数値の所に文字列を使ったり文法的に出鱈目になっています。
「DrawFormatString」 ← リファレンス
http://homepage2.nifty.com/natupaji/DxL ... tml#R17N20
まず、C言語をちゃんと理解されたほうが良いと思いますよ。

DrawFormatString("%d", "%d", Cr, "%d\n",250+1*x ,240-32*y ,a[x][y]) ; //①
ではなく
DrawFormatString(250+1*x,240-32*y, Cr, "%d" , a[x][y]) ; //①
とすれば数値は表示されると思います。

それと
printf("\n");
はグラフィック画面であるDXライブラリのウィンドウでは無意味です。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

だんごさん
記事: 273
登録日時: 14年前

Re: DXライブラリでの改行

#7

投稿記事 by だんごさん » 14年前

コード:

#include "DxLib.h"
#include "stdio.h"
 
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ){
    if(DxLib_Init()==-1){
        return -1;
    }
 
    int a[10][15]={
        {1, 1, 1, 1 ,2, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4},  // 
        {1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5},  //
        {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},  //
        {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},  //
        {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},  //
        {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},  //
        {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},  //
        {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},  //
        {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},  //
        {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},  //
        };
    int x=0;
    int y=0;
    int Cr=GetColor(255, 255, 255);
 
    for(x=0; x<10; x++){
        for(y=0; y<15; y++){
            DrawFormatString(250+1 * x,240-32 * y, Cr, "%d", a[x][y]) ; //①
        }
	}
 
    WaitKey();
    DxLib_End() ;
    return 0 ;      
}

だと思います。
座標は%dでは表わさず、直接入力します。
これに、一定の数だけ行くと改行する仕組みをつければ良いと思います。

試してないのであってるかは別として。

(ソフト屋さんと同じ解答になってしまいました)
 Dango San

あーけお

Re: DXライブラリでの改行

#8

投稿記事 by あーけお » 14年前

ありがとうございました

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: DXライブラリでの改行

#9

投稿記事 by softya(ソフト屋) » 14年前

あーけお さんが書きました:ありがとうございました
解決したのでしょうか?解決のチェックマークをお願いします。
今回のは改行は関係ない & 数値を並べたい 
と言うことでよろしいですね?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

あーけお

Re: DXライブラリでの改行

#10

投稿記事 by あーけお » 14年前

いいえ未解決です

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: DXライブラリでの改行

#11

投稿記事 by softya(ソフト屋) » 14年前

あーけお さんが書きました:いいえ未解決です
ご本人に残った疑問/問題点を質問してもらわないと、どういう問題が残っているか分かりませんのでお願いします。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

閉鎖

“C言語何でも質問掲示板” へ戻る