約 694,918 件
https://w.atwiki.jp/bokuyo/pages/94.html
可変長引数 いま読み返すと、この記事の適当さ加減がやばい。 Cでの実装 #include iostream #include stdarg.h int unco(int renton, ...) { va_list list;//va_list型は stdarg.h で定義されてる va_start(list, renton);//可変長引数の要素を扱い始めるためのva_start()マクロ int eureka = va_arg(list, int);//リストの次の要素を取り出す。popとかdequeueみたいな感じ。 while(eureka != 0) { renton += eureka; eureka = va_arg(list, int); } va_end(list);//可変長引数の要素を扱い終わるためのva_endマクロ return renton; } int main() { std cout unco(1, 5, 6, 0, 7, 7, 8, -4, 9, 156) std endl; return 0; } なんか上手く使った気がしないけど…。1+5+6を足して、0を引数に取るとループを抜ける。 0を引数に取らないと無限ループしかねないソース。 マクロの中身を見てみたけど吐き気したからもう当分見る気ない。 ちなみにC++だと cstdarg をインクルードすればおっけー。 va_start(), va_arg(), va_end()マクロの中身をC++っぽく置き換えると template typename T void vaStart(va_list ap, T v) { ap = (va_list)( reinterpret_cast const char (v)) + ((sizeof(v) + sizeof(int) - 1) ~(sizeof(int) - 1)); } template typename T T vaArg(va_list ap)//使い方は vaArg int (list)みたいな。 { return ( *(T *)((ap += ((sizeof(T) + sizeof(int) - 1) ~(sizeof(int) - 1))) - ((sizeof(T) + sizeof(int) - 1) ~(sizeof(int) - 1))) ); } void vaEnd(va_list ap) { ap = (va_list)0; } VC++2010の環境だとこんな感じ。そのままマクロを置き換えただけだけど…。 CにはC++みたくジェネリックプログラミングができないから仕方なしにマクロで書いてる部分もあるだろうと…。マクロを書き直したからってそれがC++に通用するとは思えないから このCライクな stdarg.h の可変長引数を使うのなら、マクロのままでいいかなーって思う。 そもそもC++だったらもっとかっこいい可変長引数をとる関数がかける…はず。きっとね。 やってることはリスト操作。 もし注目するなら、「reinterpret_cast」かな。あんまり見かけないからこの際知っとくのもいいかなって。
https://w.atwiki.jp/my-sql/pages/52.html
HOME 関数 文字列関数 CONCAT_WS CONCAT_WS CONCAT_WS(separator, str1, str2,...) CONCAT_WS() は CONCAT() の特殊型で、区切り文字付きの CONCAT(CONCAT With Separator)。最初の引数は残りの引数の区切り文字である。 この区切り文字は連結する各文字列の間に挿入される。 区切り文字は残りの引数同様、文字列として指定することができる。区切り文字が NULL の場合、結果は NULL になる。 区切り文字引数の後の NULL 値はスキップされる。 mysql SELECT CONCAT_WS(",","First name","Second name","Last Name"); - First name,Second name,Last Name mysql SELECT CONCAT_WS(",","First name",NULL,"Last Name"); - First name,Last Name MySQL 4.1.1 より前のバージョンの CONCAT_WS() では、NULL 値だけでなく、空の文字列もスキップされる。
https://w.atwiki.jp/aster-infra/pages/121.html
一般のコマンドと同様に、シェルスクリプトのも引数が使用できます。 bashでは、特殊な変数を用いて引数などを参照できます。 引数をあらわす変数 変数名 説明 $1 シェルスクリプトファイル名(フルパス) $2 1番目の引数 $3 2番目の引数。以下順に$3、$4、・・・・$nとなる $# 引数の数 次のように、シェルを実行してみます。 $ cat test echo $0 echo $1 echo $2 echo $# $ ./test args1 ./test args1 1 引数は1つしか指定されていないので、$2は空文字列になります。
https://w.atwiki.jp/ielsord/pages/23.html
タイプ一覧 タイプ1 a~ br() ref(キャッスル位置.jpg,マップ/φ字型/タイプ1,width=256,height=300)
https://w.atwiki.jp/kindaidensan/pages/18.html
文字の描画 このページでは文字の描画について解説します。基本的なことは図形の描画と同じです。 まずは以下のソースコードを打ち込んでみましょう。 * iimport java.awt.Color; import densan.s.game.drawing.Drawer;import densan.s.game.manager.GameManager;import densan.s.game.manager.Updatable; public class TestGame implements Updatable { //初期化public TestGame() {// まだ使わない}//描画@Overridepublic void draw(Drawer d) {//色の設定//青にd.setColor(Color.BLUE);//塗りつぶした四角形を描画(X座標、Y座標、幅、高さ)d.fillRect(100, 200, 100, 200);//色を赤にd.setColor(Color.RED);//円の輪郭を描画(X座標、Y座標、半径)d.drawCircle(200, 400, 100);//------------//変更点開始///////////////////比較用の赤線d.drawLine(0, 50, 800, 50, 1);//フォントサイズ指定d.setFontSize(20);//黒d.setColor(Color.BLACK);//左下座標を指定して文字を描画d.drawString("黒文字L", 0, 50);//中心を指定して文字を描画d.drawStringCenter("黒文字C", 400, 50);//右下座標を指定して文字を描画d.drawStringRight("黒文字R", 800, 50);//フォントサイズ指定d.setFontSize(200);//オレンジd.setColor(Color.ORANGE);//中心に大きく描画d.drawStringCenter("中心", 400, 300);///////////////////変更点終了//------------ }//更新@Overridepublic void update() {// まだ使わない }//初期化public static void main(String[] args) {//ゲームを管理するクラスを取得GameManager gm = GameManager.getInstance();//このメソッドでウインドウを表示する//引数はそれぞれ(幅, 高さ, タイトルバーに表示する文字)gm.createFrame(800, 600, "テストゲーム");//更新と描画を担うオブジェクトを設定gm.setUpdatable(new TestGame());} } このコードを実行すると画像のようになります。 解説 今回も書き加えたのはdrawメソッドの中身ぐらいです。(30~47) 前回説明したメソッドの詳細は省きます。 33行目のsetFontSizeは描画する文字のサイズを指定します。引数にサイズの数値を指定します。 サイズは縦幅が数値と同じピクセルぐらいになります。文字やフォントによってかなり違うのでちょっとずつ変えてって確かめたほうが良いです。 デフォルトのサイズは変更される可能性がある上に、別の場所でサイズを変えるとそのサイズが次のループでも適用されます。かんたんなデバック出力以外ではできるだけサイズを指定しましょう。 37~41行目のdrawString,drawStringCenter,drawStringRightメソッドは文字を描画するメソッドです。すべて引数は(描画する文字列、X座標、Y座標)です。 それぞれの違いは指定した座標からどう文字を描画するかです。drawString 指定した座標が文字の左下になります。つまり左詰めでベースライン(文字の下端)指定です。 drawStringCenter 指定した座標が文字の中心になります。つまり中央揃えでセンターライン(文字の中心)指定です。このメソッドは他と違って縦も中心に合わせるので注意してください。 drawStringRight 指定した座標が文字の右下になります。つまり右詰めでベースライン指定です。 文字の近くを通っている赤い線がメソッドで指定してるY座標を示しているのでそれを参考にするとわかりやすいです。 文字は図形と違ってY座標は基本的に下側を指定することに注意してください。 文字描画でもsetColorで指定した色が引き継がれます。 文字関連ではsetFontというメソッドも存在します。フォントを指定するメソッドです。自作フォントなんかも指定できます。。詳細はsetFontのjavaDocとその引数に指定するFontのJavaDocを参照してください。 FontについてはJavaの標準ライブラリのクラスなのでググればいろいろ出てきます。ただしjava.awt.Fontであることを確かめたほうが良いです。(別パッケージで同じ名前のクラスが他にある) Drawerについて詳しくはhttp //kiki33.bitbucket.org/densan/s/game/drawing/Drawer.html まとめ 今回は文字描画について解説しました。こちらはゲームでも普通に使います。ただ、見た目を重視するならちゃんとしたフォントを使ったりフォントを自作したり数字とかは画像にしたりします。ただ扱いがかんたんなのでデバック出力とかに便利です。 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/stgbuilder/pages/162.html
<文字列 タブ> 表示する文字列や変数を設定。 文字列を表示する:onにすると、指定された文字列を指定されたフォントで表示。 文字列の中心を基準にする:onにすると、拡大や回転の中心位置を指定。 表示文字列:表示する文字列(半角英数字)を設定。(フォントに無い文字は表示できない) (v0.99.11以降) 引数1:変数(0-15)を指定。 引数2:変数(0-15)を指定。 引数3:変数(0-15)を指定。 表示したい変数を引数に設定し、C言語のprintfに準拠して文字列に含めることで、変数を表示。 文字列に使用した変数文字列の順に、引数1,2,3を代入。 →printf (v0.99.29以降) 引数1:ローカル変数(0-15)またはシステム変数(初期化される,保存される)を指定。 システム用:システム変数ではシステム変数の番号(0-255)も指定。 使用可能なローカル変数が、16個→64個に増加(v0.99.74以降) 引数2:ローカル変数(0-15)またはシステム変数(初期化される,保存される)を指定。 システム用:システム変数ではシステム変数の番号(0-255)も指定。 使用可能なローカル変数が、16個→64個に増加(v0.99.74以降) 引数3:ローカル変数(0-15)またはシステム変数(初期化される,保存される)を指定。 システム用:システム変数ではシステム変数の番号(0-255)も指定。 使用可能なローカル変数が、16個→64個に増加(v0.99.74以降) フォント:使用するフォントを指定。(指定しなかった場合はシステムフォントを使用) キャラクタ編集>> メイン タブ,多関節 タブ,アイテム タブ,エフェクト タブ,3Dモデル タブ,物理演算 タブ,動画 タブ
https://w.atwiki.jp/slvip/pages/57.html
関数っていうのはLSLで元から用意されてる物と ユーザが自分で作れる物がある 関数 まずはLSLに元からある関数の使い方の説明 関数を使うことで ある動作を一つにまとめる ←とっても大事 ある値を参照する ってことができるんだ 関数名1(引数); そして関数名の後に続くこの() これはこの関数1にこの引数を使って処理をしてくれ!ってこと ちなみに・・ LSLで始めから用意されてる関数は 全て関数名の先頭にllって書いてある わかりやすいな たとえばllSetPos関数を例にしてみると llSetPos( 5,10,15 ); llSetPos関数っていうのは引数の値にプリムを移動させるという使い方 この関数を動かすことで動かしたプリムは 5,10,15 の座標に移動させられる 引数は関数によって複数要求されることがあるんだけど そういった場合は幾つかの引数を,(カンマ)で区切ってやる必要がある 関数名1(引数1,引数2); また、この引数ってのは関数によって使える型が決まってる 今度はllOwnerSayを例にして何の型を使えって言われてるのか調べてみよう llOwnerSay 上のほうに llOwnerSay(string msg) って書いてあるのがわかると思う どういうことかっていうと llOwnerSayに必要な引数はstring型1つだけ って意味なので引数には文字列型を使わないといけないってこと llOwnerSay("aiueo"); llOwnerSayは自身に引数を表示するって意味なので こうすることで自分の画面にaiueoと表示される ある値を参照する関数っていうのは 関数を実行することによって値を参照することができる vector v = llGetPos(); llGetPos関数は実行することで今ある座標を参照することができる 参照された値は代入演算子で別の変数に代入する必要がある こうやって色々な関数を使って 現在時刻を調べたり風の向きを調べたりすることができるんだ ユーザ関数 ユーザ関数っていうのは 今まで説明してた関数とは逆で 関数を呼び出した時の処理を自分で作ってしまおうという事 myFunction(5); こんな感じで自分で作ったmyFunctionという関数に5という引数を付け加えて実行することができる だけど実行した時に起こす処理を書く必要があるんだ 書く場所はステートの外側&ステートより前に書かないといけない 書き方はこんな感じ 返す型 関数名(受け取る引数){ 処理 return 返す値; } 返す型、返す値ってのは イベント内 myFunction(5); を実行した時にかえって来る型と値の事 ここに書いた型と値が帰って来るので integer myFunction(integer n){ 処理 return 10; } こんなかんじで書いた場合は型をinteger型にしてるので イベント内 integer a = myFunction(5); という感じで実行すれば実行した場所に整数型の値を返すことができる 受け取る引数っていうのは イベント内 myFunction(5); これの場合は整数型の5という引数を送ってるので integer myFunction(integer n){ 処理 return 10; } 関数の中の変数nで5という値を取得することができる このnは関数の中で使うことができる integer myFunction(integer n){ integer m = n * 10; return m; } こういう関数を用意しておいて イベント内 integer new = myFunction(5); こうやって実行させると newの中には5*10の値が入ってることになる 関数の中で処理を実行させたい場合は この関数の中に用意された関数を書いてやればおk integer myFunction(){ llOwnerSay("run function"); return 0; } こういう関数を用意しておいて(引数は必要ないので適当に0を返しておく) イベント内 myFunction(); こう実行させると自身の画面にrun functionと表示される
https://w.atwiki.jp/officewiki/pages/50.html
https://w.atwiki.jp/k_tech/pages/48.html
java コンストラクタはオブジェクトが生成される時に呼び出される。 修飾子を設定できる。public,protected,private 引数を受け取るコンストラクタの定義も可能 宣言で例外を指定する事も可能 引数や型の異なるコンストラクタの複数定義も可能 sample class sample { public SampleClass() // default public SomeClass(int count) // コンストラクタのオーバーロード } コンストラクタには、フィールドの初期化処理などオブジェクトが生成されたときに最初に実行される処理を記述する インスタンス変数の場合、数値は0、ブール値はfalse、参照変数はnullに暗黙的に設定される ローカル変数は明示的に初期化する必要あり コンストラクタをオーバーロードする場合、this()を使ってコンストラクタの中でオーバーロードされたほかのコンストラクタを呼び出すことが可能 sample class SomeClass { public SomeClass() // default { this(20); // もう一つのコンストラクタを呼び出す } public SomeClass(int count) // コンストラクタのオーバーロード { ・・・ } } javaにはデストラクタはない 自動的にガベージコレクションを行うため明示的にメモリを開放すつ必要がない 明示的にする場合には、finalize methodで実装する。 このmethodはインスタンスへの参照はもうないとガベージコレクションにより判断された場合に、ガベージコレクタにより呼び出される。 コンストラクタの定義方法と使用方法と示すプログラム public class ConstructorTest { public static void main(String[] args) { System.out.println("デフォルトコンストラクタ"); ConstructorTestClass obj1 = new ConstructorTestClass(); System.out.println("obj1.getCounter() ----- " + obj1.getCounter()); System.out.println("obj1.getMessage() ----- " + obj1.getMessage()); System.out.prinln(); System.out.println("int型の引数を取るコンストラクタ"); ConstructorTestClass obj2 = new ConstructorTestClass(40); System.out.println("obj2.getCounter() ----- " + obj2.getCounter()); System.out.println("obj2.getMessage() ----- " + obj2.getMessage()); System.out.println(); System.out.println("int型とString型を受け取るコンストラクタ"); ConstructorTestClass obj3 = new ConstructorTestClass(60,"Unko!!!"); System.out.println("obj3.getCounter() ----- " + obj3.getCounter()); System.out.println("obj3.getMessage() ----- " + obj3.getMessage()); } } class ConstructorTestClass { private int counter; private String message; public ConstructorTestClass() { this(20,"メッセージ"); } public ConstructorTestClass(int c) { this(c,"メッセージ"); } public ConstrucotrTestClass(int c,String m) { setCounter(c); setMessage(m); } public String getMessage() { return message; } public void setMessage(String s) { message = s; } public int getCounter() { return counter; } public void setCounter(int c) { counter = c; } } オーバーロードで3つのコンストラクタを作成 2つの引数を取るコンストラクタでは渡された値をインスタンス変数に設定 ほかのコンストラクタではthis()によりこのコンストラクタを呼び出して初期化処理を実行 その際、呼び出し元から値を渡していない場合にはデフォルト値を渡す
https://w.atwiki.jp/my-sql/pages/41.html
HOME 関数 文字列関数 INSTR INSTR INSTR(str,substr) 文字列 str に最初に出現する部分文字列 substr の位置を返す。これは LOCATE() の 2 つの引数を使用する形式と同じだが、引数の順序が入れ替わっている。 mysql SELECT INSTR( foobarbar , bar ); - 4 mysql SELECT INSTR( xbar , foobar ); - 0 mysql SELECT INSTR( あいうえお , う ); - 3 この関数はマルチバイト文字に対応している。 MySQL 3.23 では、この関数では大文字と小文字が区別されるが(ケース依存)、バージョン 4.0 では、どちらかの引数がバイナリ文字列の場合にのみケース依存になる