約 695,054 件
https://w.atwiki.jp/civilization/pages/2560.html
要修正項目 イメージ表示用構文の修正 各ページごとに下記2つの正規表現を使って置換(上から順に 置換前 置換後 ref\(([^,;]+)\/([^,;]+\.(gif|jpg|png)) ref($2,$1 \ icon\ ([^;]+); ref(font_$1.png,アイコン,,nolink) リンク切れの修正 リンクの表記が相対パスの場合@Wikiでは認識できていない 例) 修正前 修正後 ./古代 テクノロジー/古代 #includeの引数 #includeプラグインの引数は@Wikiでは引数が1つのみしか動かない ページサイズ @Wikiでは1ページあたり50,000バイトまでの入力しか許可していないので、内容が多いページは分割する必要がある 新しく作成するページはpukiwikiモードが一番互換性が高い模様 行頭の一分文字 行頭が「構文文字の全角相当の文字」だと正常に処理できない模様。 例えば+など(半角の+は番号付きリスト) 名前 コメント
https://w.atwiki.jp/cschola/pages/21.html
string C++の標準ライブラリには文字列操作を便利にした string というものがあります。 従来の char* は単なる文字配列でしたが、stringは文字列操作のための演算子や関数が用意されています。 stringを使うには string をincludeします。 #include string string は std に含まれているため std string でアクセスします。 初期化 string の初期化の内基本的な2種類を紹介します。 std string str; std string str("はろー わーるど!"); このほかにも多くの初期化方法が用意されています。 代入 文字列の割り当てには = 演算子か .assign() を使います。 std string str; str = "はろー わーるど!";// = で代入 str.assign("はろー わーるど!");// .assign() で代入 追加 結合 = か + 演算子または .append() を使うことで文字列の後ろに他の文字列を追加できます。 std string str; str = "はろー";// "はろー"を代入 str += " わーるど";// "わーるど" を = で追加 str.append("!");// "!" を .append()で追加 比較 == != = = を使い文字列同士を比較することが出来ます。 また .compare() を使うと比較結果を戻り値で返してくれます。 std string str1("ABC");// str1を "ABC" で初期化して作成 std string str2 = str1;// str1 をコピーして str2を作成 // str1 と str2 を比較 if(str1 == str2){ std cout str1 + "と" + str2 + "は同じ" std endl; } 文字の取得 文字列から文字を取り出すには [] 演算子か .at() を使います。 std string str("abcdef");// str を "abcdef" で初期化して作成 char c1 = str[0];// strの0番目 a を c1 に入れる char c2 = str.at(5);// strの5番目 f を c2 に入れる std cout c1 c2 std endl;//c1 と c2 を表示 文字列の取得 .substr() を使うと指定した部分の文字列が返ってきます。 第1引数が取り出す位置で、第2引数が取り出す長さです。 std string str1("Hello World!!"); std string str2; str2 = str1.substr(6,5); // str の6番目から5文字 "World" を抜き出して str2 に代入 std cout str2 std endl;// str2を表示 第2引数を省略すると文字列の最後まで取り出されます。 文字列の長さを調べる 文字列の長さを調べるには .length() か .size() を使います。 これら2つは同じ意味です。 std string str("abc"); // str の長さを表示 std cout str.length() std endl str.size() std endl; 日本語は2バイト文字という点に気をつけましょう。 文字列が空かどうか調べる .empty() を使うと、文字列が空のとき true を返し、それ以外のとき false を返します。 練習問題 次のようなプログラムを作ってください 第1問 ユーザーからの入力を文字列に割り当て "Apple"という文字と比較する。 また比較した結果によりメッセージを出力する。 第2問 ユーザーからの入力を文字列に割り当て、 長さが5以上の文字列が入力されるまで繰り返す abc 5文字以上入力してください hello オッケー testcounter 合計 - 今日 - 昨日 -
https://w.atwiki.jp/autoit/pages/27.html
標準入力からデータを読み取ります。 ConsoleRead([peek = False [, binary = False]]) 引数 peek (省略可) この引数が True の場合、読み取った文字をストリームから削除しません。 binary (省略可) この引数が True の場合、データをバイナリとして読み取ります。(デフォルトではテキストとして読み取ります)。 戻り値 成功時 読み取ったデータ。 @extended は読み取ったバイト数になります。 失敗時 EOF (データ終端) に到達した場合や、標準入力が接続されていない場合は、 @error を0以外の値に設定します。 詳細 執筆中... 関連 ConsoleWrite, ConsoleWriteError, Run
https://w.atwiki.jp/rai002/pages/52.html
マルチバイト文字 インクルードファイル ctype.h isspace 書式 int isspace( int c ) 機能 空白判定 引数 int c 判定する文字 戻り値 空白(0x20)、水平タブ(0x09)、垂直タブ(0x0B)、改行(0x0A)、復帰(0x0D)、改頁(0x0C)であれば、0以外を返し、そうでなければ、0を返します。 ispunct 書式 int ispunct( int c ) 機能 記号判定 引数 int c 判定する文字 戻り値 記号( 0x21~0x2F, 0x3A~0x40, 0x5B~0x60, 0x7B~0x7E )であれば、0以外を返し、記号でなければ、0を返します。 iscntrl 書式 int iscntrl( int c ) 機能 制御文字判定 引数 int c 判定する文字 戻り値 制御文字( 0x00~0x1F, 0x7F )であれば、0以外を返し、制御文字でなければ、0を返します。 ワイド文字(多分) インクルードファイル ctype.h または wchar.h iswspace 書式 int iswspace( wint_t c ) 機能 空白判定 引数 wint_t c 判定する文字 戻り値 空白、水平タブ、垂直タブ、改行、復帰、改頁であれば、0以外を返し、そうでなければ、0を返します。 iswpunct 書式 int iswpunct( wint_t c ) 機能 記号判定 引数 wint_t c 判定する文字 戻り値 記号であれば、0以外を返し、記号でなければ、0を返します。 iswcntrl 書式 int iswcntrl( wint_t c ) 機能 制御文字判定 引数 wint_t c 判定する文字 戻り値 制御文字であれば、0以外を返し、制御文字でなければ、0を返します。
https://w.atwiki.jp/tmiya/pages/31.html
4.2 パラメータ def を使って、パラメータを持った関数を定義できます。たとえば scala def square(x Double) = x * x square (Double)Double scala square(2) unnamed0 Double = 4.0 scala square(5 + 3) unnamed1 Double = 64.0 scala square(square(4)) unnamed2 Double = 256.0 scala def sumOfSquares(x Double, y Double) = square(x) + square(y) sumOfSquares (Double,Double)Double scala sumOfSquares(3, 2 + 2) unnamed3 Double = 25.0 関数のパラメータは関数名の後に置かれ、常に括弧で囲まれます。各パラメータは型を伴い、型はパラメータ名とコロンに続いて示されます。現時点では、倍精度数の scala.Double 型のような基本的な数値型だけを必要とします。Scala では、いくつかの標準的な型について 型エイリアス が定義されていて、数値型は Java と同じように書けます。たとえば double は scala.Double の型エイリアスであり、int は scala.Int の型エイリアスです。 パラメータをもつ関数は、式の演算子と同じように評価されます。はじめに関数の引数が (左から右の順序で) 評価されます。つぎに関数適用が関数の右辺で置き換えられ、同時に関数のすべての形式上のパラメータが対応する実際の引数で置き換えられます。 Example 4.2.1 sumOfSquares(3, 2+2) → sumOfSquares(3, 4) → square(3) + square(4) → 3 * 3 + square(4) → 9 + square(4) → 9 + 4 * 4 → 9 + 16 → 25 この例は、インタプリタが関数適用の前に、関数の引数を値に簡約することを示しています。この代わりに、簡約されていない引数に関数適用することも選択できます。それは次の簡約列をもたらします。 sumOfSquares(3, 2+2) → square(3) + square(2+2) → 3 * 3 + square(2+2) → 9 + square(2+2) → 9 + (2+2) * (2+2) → 9 + 4 * (2+2) → 9 + 4 * 4 → 9 + 16 → 25 二つ目の評価順序は 名前渡し (call-by-name)として、はじめの例は 値渡し (call-by-value)として知られています。純粋な関数だけを使用する式や、したがって、置き換えモデルで簡約可能な式では、どちらの枠組みでも同じ値となります。 値渡しには、引数評価を繰り返さないという利点があります。名前渡しには、パラメータが関数で全く使用されない時に引数の評価を避けるという利点があります。ふつう、値渡しは名前渡しより効率的ですが、値渡し評価は、名前渡し評価なら終了する箇所でループするかもしれません。次を考えてみましょう。 scala def loop Int = loop loop Int scala def first(x Int, y Int) = x first (Int,Int)Int すると、first(1, loop) は名前渡しでは 1 に簡約されますが、値渡しでは繰り返し自分自身へと簡約され、したがって評価は終了しません。 first(1, loop) → first(1, loop) → first(1, loop) → ... Scala はデフォルトでは値渡しを使いますが、パラメータ型の前に = が置かれた場合は名前渡し評価へと切り替えます。 Example 4.2.2 scala def constOne(x Int, y = Int) = 1 constOne (Int,= Int)Int scala constOne(1, loop) unnamed0 Int = 1 scala constOne(loop, 2) // 無限ループとなる ^C // Ctrl-C で実行を停止 前ページ 4 章 目次 次ページ 「~すべての正式な関数の仮引数が~」は、単に「関数のすべての仮引数が~」で良いのではないでしょうか。あと、「実際の引数」は実引数とするのがより一般的かと思います。 -- みずしま (2008-04-15 21 23 31) ご指摘どうもありがとうございます>みずしまさん。修正致しました。 -- tmiya (2008-04-16 21 54 28) 名前 コメント
https://w.atwiki.jp/fieds_labo3/pages/21.html
基本 クラス 1.クラス宣言 class クラス名 { 型名 フィールド名; ・・・ 戻り値の型 メソッド名(引数リスト) { 文; ・・・ return 式; } ・・・ } class Abc { int num1; int num2; } 2.オブジェクト生成 クラス名 変数名; 変数名 = new クラス名(); Abc abc1; abc1 = new Abc(); Abc abc1 = new Abc(); 3.メンバアクセス オブジェクト生成により使用可能。インスタンス変数、インスタンスメソッド。 変数名.フィールド名 = 式; abc1.num1 = 10; 4.メソッド クラス内のフィールド、メソッドは、クラスグローバル。名称のみでアクセス可能。 this.フィールド名 this.メソッド名 表現有り。 5.カプセル化 フィールド:private宣言 メソッド:public宣言 6.オーバーロード 同一メソッド名で、引数の型、個数が異なるメソッドを複数定義。 7.コンストラクタ クラスのオブジェクトが作成された時にコンストラクタ内の処理が自動的に行われる。 初期化に使用。 オーバーロード可能。 public クラス名(引数リスト) { 文; ] 別のコンストラクタを呼び出し、追加処理を行う。 this()はコンストラクタの先頭に記述。引数処理可。 private Abc() { num = 1; } public Abc(int a,int b) { this(); num = num + a + b; } デフォルトコンストラクタ Abc() { } 8.フィールドの初期値 boolean:false 文字型: \u0000 整数型:0 不動小数点型:0.0 参照型:null 9.クラス変数、クラスメソッド static宣言 クラス全体で扱うデータ用。各生成オブジェクトから共用される。 クラスメソッドは、クラスのオブジェクトが未生成でも呼び出せる。 クラス名.クラスメソッド(引数リスト); Abc.abcview(); クラスメソッドはオブジェクトと関連していないため、thisは使えない。 同じ理由でインスタンス変数、インスタンスメソッドは使えない。
https://w.atwiki.jp/fumiduki1985/pages/309.html
getOpenFileName関数を使用すると可能。 主に下記の引数が使用可能。他の引数はマニュアルを参照のこと。 caption:ダイアログのタイトルを文字列で指定。 filename:初期ファイル名を文字列で指定。 types:ダイアログで選択可能なファイルフィルタを文字列で指定。書式は下記記述例を参照。 記述例: f = getOpenFileName caption "File Open" filename "default.txt" types "text(*.txt)|*.txt|All(*.*)|*.*" このページのタグ一覧 3dsMax MAXScript プログラミング
https://w.atwiki.jp/genshiken/pages/23.html
080128 試験とかあるので提出は二週間先までということで。来週はおやすみします。 二次元座標の計算 二点間の距離を返す関数、二点の中点を返す関数を書いてください。 なお、点は下に示す構造体で示されるものとします。 struct Point{ double x, y; }; また、以下の仕様を満たすことを条件とします。 Point型の引数を二つ受け取る。 距離を返す関数はdoubleを、中点を返す関数はPoint型オブジェクトを返してください。 構造体が分からない人はwiki…は書き進んでないので手元の参考書を参照してください -) 連絡 京都とか行ってて更新が遅れました。 さて11日現在、二人しか提出されてません。さらにきちんと解けてる人がいない状況なので来週までとりえず伸ばします。 uhito 普通に値として構造体を返せば問題ないです。 /* Pointを返すだけの関数 */ struct Point point_return(){ struct Point pt; return pt; } ikura 前者に関しては、putcharがchar型の変数を一つ受け取るように、距離を返す関数と中点を返す関数はPoint型の変数をふたつ受け取る、というそのままの意味なのですが… 例えばPoint型の変数を一つ受け取る関数は下のようにかけますね。 void func(struct Point pt){} 後者はすみません。書き方が悪かったです。中点を返す関数はPoint型の値を返してください、という意味です。というか中点を返す関数が点以外の物返してどうする、という話ですね。 構造体とは 簡単に説明。 構造体とは複数の値をまとめておくための物です。 例えば二次元座標は二つの値を使って表されますが、二つの値を別々にではなく、一つの座標として扱いたいことがあります。 関数から座標を返したい時などですね。そのままでは一つの値しか返すことができません。 そういった場合に、内部に二つの値を持つ一つの値として構造体を定義してやれば、二つの値を返すことができる、というわけです。 値の取り出し方、書き込み方は、今回の例に合わせると、 struct Point pt; pt.x = pt.y = 0; /* 書き込み */ int i = pt.x; /* 取り出し */ のような感じです。「.」を使います。 C言語では構造体の型を宣言するときは、組み込み型(int や double)とは違って、struct と明示的に構造体であることを表す必要があります。注意。 追記:構造体のページを作りました。 解答例 #include math.h double range(struct Point pt1, struct Point pt2){ double mx = pt1.x - pt2.x, my = pt1.y - pt2.y; return sqrt(mx * mx + my * my); } struct Point middle_point(struct Point pt1, struct Point pt2){ struct Point ret; ret.x = (pt1.x + pt2.x) / 2.0; ret.y = (pt1.y + pt2.y) / 2.0; return ret; } 採点 uhito 原点と、じゃなくて二点間の、です… ikura 一応#include math.h は書いてね。あと冗長な一時変数が多いです。 tatikoma よろしー。ただstruct Point disは必要無いと思う。 take 差が負だろうと二乗すれば正になると思うよ!
https://w.atwiki.jp/kokeiro/pages/38.html
変数について この項目で学ぶこと 変数とは 変数の宣言の仕方について 変数に値を入れる 変数を表示する 計算してみる 計算するときに注意すること 変数名について printf関数のいろいろ 変数とは 変数とは、名前の通り「変化する数」です。プログラムを実行しているとき、さまざまな計算が行われ値が変化します。たとえばRPGのキャラのHPであったり、レベルであったり。そういう数です。文字も変数として扱えるのですが、C言語の文字の扱いは複雑なので別の講義で詳しく説明します。 今の時点ではあまり関係ありませんが、変数はメモリ(主記憶)上に記憶されます。この辺りの考え方がいずれ必要になってくるので一応覚えておいて下さい。 変数の宣言の仕方について 変数を使うにはまず変数を宣言しなくてはなりません。変数を宣言するというのは、値を入れることが出来る箱を用意することと考えてください。変数を宣言する(箱を用意する)には変数の型と変数名を記述します。変数の型とは、用意された変数(箱)にどのような種類の値を入れることができるかを示します。具体的には整数、小数、文字の3つ型があります。たとえば整数型の変数には整数しか、文字型の変数には文字しか入れることが出来ません(正確には違いますが)。変数名とは、宣言した変数の名前です。つまり用意した箱の名前です。変数名は後述の条件を満たせば、自由につけることが出来ます。 変数の型には主に以下のものがあります。 int整数型 float小数型 double小数型(floatより高精度) char1文字 変数の宣言の仕方を見てみましょう。 変数を宣言するだけのサンプルソース #include stdio.h int main (){ int sampleInt;// 整数型の変数を宣言 float Pi;// 小数型の変数を宣言 double weight;// 小数型の変数を宣言 char moji;// 文字型の変数を宣言 return 0; } コンパイルすると、警告が出るかもしれません。ここではあくまでもサンプルなので無視します。本物のプログラムを作成しているときは無視しないでください。 変数に値を入れる 変数に値を入れるには、「=(代入演算子)」を用います。これは、右の値を左の変数に代入するという動作をします。数学のように同値であることを示しているわけではありません。 変数は宣言しただけではどのような値が入っているのか不明です。整数型の変数を宣言したとき、初期値が23098かもしれませんし、-320かもしれません。使い物になりませんね。変数は宣言すると同時に初期値を与えることが出来ます。C言語ではごみデータを上書きして使用できる値を代入することを初期化といいます。初期化の概念は言語によって異なるので注意しましょう。 変数の宣言と初期化のサンプルソース #include stdio.h int main (){ int sampleInt = 5;// 整数型の変数を5で初期化 float Pi = 3.14f;// 小数型の変数を3.14で初期化 double weight = 56.8;// 小数型の変数を56.8で初期化 return 0; } 変数を表示する 変数の初期化の仕方が分かりましたが、実際に初期化されているのかどうか見ることが出来ません。printf関数の書式指定機能を用いることで、変数の値を表示してみましょう。詳しい説明の前に、サンプルソースを見てみましょう。 #include stdio.h int main (){ int sampleInt = 5;// 整数型の変数を5で初期化 double weight = 56.8;// 小数型の変数を56.8で初期化 printf("サンプルイントの値は%dです。\n",sampleInt);// %dで整数 printf("weight = %f\n",weight);// %fで小数 return 0; } 実行してみると、printf関数に書かれている「%d」「%f」は表示されず変数の値が表示されます。このように%とそれに続く1文字からなる特殊な文字によって変数の値を表示することが出来ます。「%」に続く文字は表示したい変数の型によって異なります。値の保持のしかたが型によって異なるので、出力の仕方も型ごとに異なるためです。主なものを紹介します。 %d整数 %f小数(floatとdoubleどちらも) %c1文字 %s文字列 後者二つは文字列に関係するので別の講義で詳しく説明します。 計算してみる 計算に使える演算子は、以下のものがあります。 +a + baとbを足した値を求める -a - baからbを引いた値を求める *a * baとbをかけた値を求める /a / baをbで割った値を求める %a % baをbで割った余り(剰余)を求める 足し引き割り算の演算子は数学と同じですね。掛け算と剰余の演算子は覚えてください。剰余を利用する機会は日常生活ではあまりありませんが、ゲームプログラミングの際はそこそこ使用します。計算する際は変数同士を計算することも、変数と定数で計算することも、定数と定数で計算することも出来ます。定数とは変数以外の値です。4とか20とか。基本的には同じ型同士で計算することになります。また、 「変数aの値を4増やす」という場合には、「a = a + 4」と記述 します。慣れるまでは不自然に感じると思います。 さまざまな計算を行い、計算結果を表示する。ここでは整数型のみ扱うが、小数型でも同様に実行することが可能。 #include stdio.h int main (){ int a = 3 , b = 9;// コンマで区切れば同時に宣言することが出来る printf("aの値は%d,bの値は%dです\n",a,b);// 一度に複数の変数を表示することが出来る。 a = b;// aにbを代入する printf("aに%dを代入したので、aの値は%dです\n",b,a); a = 5;// aに5を代入する printf("aに%dを代入したので、aの値は%dです\n",5,a);// 変数でなくても型が同じなら%dで表示することも出来る a = a + 4;// aに4を足す printf("aに%dを足したので、aの値は%dです\n",4,a); a = 5 - 34;// aに5-34を代入する printf("%d - %d = %d\n",5,34,a); a = 4 * 3;// aに4×3を代入する printf("%d * %d = %d\n",4,3,a); a = 90 / 10;// aに90÷10を代入する printf("%d / %d = %d\n",90,10,a); a = ( 10 + 3 )*4;// 括弧で計算順序を変えることができる printf("( %d + %d )*%d = %d%dです\n",10,3,4,a); return 0; } 計算するときに注意すること 列挙します。 数を0で割る、剰余を求めることはできません。バグります。 小数型はそもそも割った余りが存在しないので剰余を求めることが出来ません。 計算には優先順位があります。+-より*/のほうが優先度が高いです。()で優先順位を変えることができます。中括弧,大括弧は存在せず、全て()で記述します。 int sample1 = 4 + 3*2;// 10で初期化される int sample2 = ( 4 + 3 )*2;// 14で初期化される 整数型に小数を代入すると小数点以下は切り捨てられます。 int sample1 = 10 / 3;// 3で初期化される int sample2 = 3 / 10;// 0で初期化される 変数名について 変数名に使用することが出来る文字は以下のものがあります(ただし、全て半角文字)。 小文字と大文字のアルファベット 数字 _(アンダースコア) 小文字と大文字は別の文字として扱われます。つまり「sample」と「Sample」は別の名前です。 例外的に使えない変数名は次のようなものです。 変数名の先頭に数字は使えない 予約語(C言語が定める語)と同じ名前は使えない(returnなど) printf関数のいろいろ ひたすらサンプルソースを載せる予定です。
https://w.atwiki.jp/stgbuilder/pages/528.html
「%■」1個につき、引数1個を表す。 「%■」が複数個(1-3個)ある場合は、順に引数1,引数2,引数3となる。 例1-1) %d 引数1:変数1=10 表示:10 例1-2) %d %d 引数1:変数1=10 引数2:変数2=100 表示:10 100 例1-3) %d %d %d 引数1:変数1=10 引数2:変数2=100 引数3:変数3=1000 表示:10 100 1000 「%d」「%-■d」は、最小桁を保証しない 10進数の整数(左寄せになる) 「%■d」「%_■d」は、最小■桁を空白で保証する 10進数の整数(■桁に満たない場合、空白で埋めて桁を確保) 「%0■d」は、最小■桁を「0」で保証する 10進数の整数(■桁に満たない場合、0で埋めて桁を確保) 「%+d」は、最小桁を保証しない 符合(+,-)付きの 10進数の整数(左寄せになる) 「%+■d」「%+_■d」は、最小■桁を空白で保証する 符合(+,-)付きの 10進数の整数(■桁に満たない場合、空白で埋めて桁を確保) (符合も1桁としてカウントされる) 「%+0■d」は、最小■桁を「0」で保証する 符合(+,-)付きの 10進数の整数(■桁に満たない場合、0で埋めて桁を確保) (符合も1桁としてカウントされる) 例2-1) %d %2d %4d 引数1:変数1=100 引数2:変数2=100 引数3:変数3=100 表示:100 100 _100 例2-2) %d %02d %04d 引数1:変数1=100 引数2:変数2=100 引数3:変数3=100 表示:100 100 0100 「(%で始まらない)文字列」は、そのまま表示されるが、「%」そのものは表示できない。 「%%%%」で、文字列として「%」(1個のみ)が表示される。 例3-1) %d + %d = %d 引数1:変数1=1 引数2:変数2=2 引数3:変数3=3 表示:1 + 2 = 3 例3-2) %d %%%% %d %%%% %d %%%% 引数1:変数1=1 引数2:変数2=10 引数3:変数3=100 表示:1 % 10 % 100 % 文字列 タブ,printf レイアウ編集