プログラム構文

配列

Bash


Bashで配列を使用するには eval を使用する
配列をセットする側 この場合変数 TMP1〜TMP5を設定する
CNT=1
while [ $CNT -le 5 ]; do
   eval "TMP${CNT}=/tmp/tmpfile.${CNT}"
   CNT=`expr $CNT + 1`
done


配列を取り出す側
変数名$なしとIndex部をダブルクォーテーションで囲み先頭に$を付けた部分を
 eval で再定義する

CNT=1
while [ $CNT -le 5 ]; do
   FILE=`eval echo $"TMP$CNT"`
   echo $FILE
   CNT=`expr $CNT + 1`
done

出力結果

/tmp/tmpfile.1
/tmp/tmpfile.2
/tmp/tmpfile.3
/tmp/tmpfile.4
/tmp/tmpfile.5

Perl


my @Titles = ('Win','Max','Unix');

foreach $val (@Titles){
  print "".$val."";
}

配列の要素数
$num = @Titles;
$num は 3

配列のIndex値の最後の値
$num = $#Titles;
$num は 2

foreach の場合は順番が保証されないので、
順番を確実に守る場合はforを使用する。

配列変数 @xx にインデックスを指定する場合は $xx[$i]で記述する。
for(my $i=0;$i<@Titles;$i++){
  print "".$Titles[$i]."";
}

\"$#\" 配列のIndex値の最後の値を使用する場合。
for(my $i=0;$i<=$#Titles;$i++){
  print "".$Titles[$i]."";
}


サブルーチンに配列のリファランスを渡す場合は @ の前に \ を指定する
&Print(\@Titles);

配列のリファランスを受け取った側
配列は @$で記述し、 Indexを指定する場合は $$xx[$i] で記述する
sub Print {
   my($Titles) = shift;
   for($i=0;$i<@$Titles;$i++){
      print "".$$Titles[$i]."";
   }
}

JavaScript


Titles = new Array();
Titles[0] = 'UNIX';
Titles[1] = 'Windows';
Titles[2] = 'Mac';

    以下の書き方でも同じ
    Titles = new Array('UNIX','Windows','Mac');

for(var i=0;i<Titles.length;i++){
  document.getElementById('List').innerHTML += "" + Titles[i] + "";
}

Excel VBA

Dim ファイル名(7) As String
Dim 曜日リスト As String
Dim ベースファイル名 As String

ベースファイル名 = "集計_"

曜日リスト = "Mon,Tue,Wed,Thu,Fri,Sat,Sun"

'# カンマ区切りデータを配列に格納する #
曜日配列 = Split(曜日リスト, ",")

For i = 0 To UBound(曜日配列)
  ファイル名(i) = ベースファイル名 & 曜日配列(i) & ".xls"
Next i

'# ファイル名を書き出す #
For i = 0 To 6
  Cells(i + 1, 1) = ファイル名(i)
Next i



先頭へ

      Document-Folder          一覧
HP-UX
HULFT
JAVA
JP1
JavaScript
Linux
MAC
PHP
Perl
Python
Ruby
SOA
Solaris
Unix全般
Windows
XML
エクセル
スタイルシート
セキュリティー
データベース
ネットワーク
パソコン
ブラウザ
プログラム構文
仮想化
          RSS-Folder
ニュース
   アットマーク・アイティ(@IT)
   シンクイット(ThinkIT)
   インターネットコム
   インターネットウォッチ
   日経IT-Pro
   日経パソコン
   CNET Japan
   ZD-NetJapan
   MYCOM
   RBB-Today
ベンダー
   日本IBM
   日本HP
   サンマイクロシステムズ
   NEC
   富士通
   日立
ソフトウェア
   マイクロソフト
   トレンドマイクロ
   オラクル
   サイボウズ
   Mozilla
   野村総合研究所
   (その他ソフトウェア企業)
更新履歴 一覧
 07/08 PERF
プログラム構文
 07/07 PERF
プログラム構文
 06/25 オブジェクトプログラミング2
Perl>サンプル
 07/12 クローン作成
仮想化>vCenter
 07/12 vyatta設定
ネットワーク>vyatta
 07/12 vyattaインストール
ネットワーク>vyatta
 07/12 リポジトリサーバ
Linux>サーバ構築
 07/05 VMwareのインストール
仮想化>VMware
 07/05 PXEブート
仮想化>KVM
 07/01 DHCPでのPXEブート
仮想化>KVM
 06/27 qcow2仮想DISK作成
仮想化>KVM
 06/13 NWの設定
仮想化>VMwareEsxi
 06/13 IPアドレスの変更
仮想化>VMwareEsxi
 06/12 自動ssh
Unix全般>シェル>Bash
 06/12 diffプログラミング
Python
Google