- ベストアンサー
printfでの出力を監視
charmer29-2の回答
- charmer29-2
- ベストアンサー率25% (41/159)
#3さんのやり方なら、OutputMonitorはこれで充分ですね。 -- #!/bin/sh -f while read foo do echo $foo if [ $foo = test ]; then echo Whee!; fi done -- 特定の文字列はこの場合testで、動作はecho Whee!となります。
関連するQ&A
- 別ターミナルへのprintf出力
LinuxでC言語プログラムから新しいターミナルを開き、そこにprintfで文字を出力したいのですがどうやったら良いのでしょうか?下記プログラムを作ってみましたが、新しいターミナルが開くだけで文字が出力されません #include <pthread.h> #include <stdio.h> #include <unistd.h> #include <signal.h> void* thread(void* arg) { int pid=0; pid = fork(); if(pid==0) { execlp("gnome-terminal","gnome-terminal",NULL); printf("Hello World!!\n"); } } int main() { pthread_t th; void* result; pthread_create(&th, NULL,thread, NULL); pthread_join( th,&result); }
- ベストアンサー
- Linux系OS
- printf()関数の第一引数の文字列のアドレスを知りたいんですが。
C言語を色々試して実験中です。 たとえば、 printf("あなたは100歳です\n"); という文をprintf関数で出力するとすると、この文字列定数「あなたは100歳です」のアドレスを調べたいんです。調べる事はできますか?よろしくお願いしますm(_ _)m
- ベストアンサー
- C・C++・C#
- 関数の戻り値として文字列を返して、printfで出力させることはできますか?
いま、引数の数値によって、文字列を返すという関数を作り、それをprintf関数で出力したいと考えているんですが、どうやって作ればいいのかわかりません。 char data_2_dtmfdata(u8 getdata) { switch(getdata) { case 0x01: //tone"1" return "KEY_1"; case 0x02: //tone"2" return "KEY_2"; case 0x03: //tone"3" return "KEY_3"; } } このような感じで関数を作成して、 printf("%s",data_2_dtmfdata(data)); printf関数でこのように設定してあげれば”KEY_1”とか”KEY_3”とかの文字列を出力してあげられるのでしょうか?
- ベストアンサー
- C・C++・C#
- AWKのprintf文
AWKのprintf文で”printf(”%d”¥n,data);”という文字列を出力したいのですが、うまくできません。%dを¥%dとすればいいだけなのかと思ったのですが、”not enough args in printf・・”というエラーとなってうまくエスケープされていないようなのですが、うまく逃げる方法はないでしょうか?出力はprintf文にはこだわらないのですが 他にいい方法があるのでしょうか?
- ベストアンサー
- その他(プログラミング・開発)
- printfの引数指定でなぜ文字列ポインタがOK?
C言語初心者です。現在入門的書籍の1冊目を読んで勉強中です。VBAは経験あります。 printf関数について質問です。 引数の指定で通常 printf("書式文字列", 変数で値) のようにしていしますよね。 char a = 'A'; printf("%c", a); ←ここで変数aの値の「A」を渡している と理解しています。 上の例で、書式文字列を省略し、 printf(a); だとエラーがでます。 しかし、文字列の場合 char a[] = "ABC"; printf(a); はエラーにならず、「ABC」と出力されます。 さらに、ポインタを使用して char a[] = "ABC"; char *b = a; printf(b); もエラーにならず、上と同様に「ABC」と出力されます。 まず、この2つの例で、エラーとならず、書式文字列が省略できているのが不思議です。 これが書式文字列を省略しているわけではないとするならば、 「printf(a)」=「printf(b)」=「printf("ABC")」ということになりますが、 「printf(a)」のaも「printf(b)」のbも"ABC"の先頭のアドレスを示しているんですよね。 ということは、printf関数の引数の指定方法は printf(書式文字列 または 文字列の先頭アドレス, 変数) というように考えられるのですが、認識があっているでしょうか? そもそも文字列について、VBAでは文字と文字列の区別はなにも意識せずに扱えたのでやや戸惑っているのですが、C言語では文字列の場合は宣言時に char a[] のように宣言し、あとは先頭のアドレスで文字列を使っていくという感じなのでしょうか? 初心者なもので何が理解できていないのかもよくわからない状況で、質問がわかりづらいかもわかりませんが、よろしくお願いします。
- ベストアンサー
- C・C++・C#
- javaのコマンドを監視・制御ってできますか?
javaはよくわからないのですが、右下のタスクバーから呼び出せるJAVAコンソールにでてくるような、JAVAコマンドを監視しておいて、受信した特定のコマンドを実行しないようにすることは可能でしょうか? ランダムに送信されてくる文章およびコマンドを随時表示していますが、まれに不適切なコマンドや文章が送られてくるため、それらが実行されるまえに除去させたいのです。 JAVAを監視しておいて、特定の文字列がくればはじく というようなことが簡単に可能でしょうか? アドバイスいただけたら、教えてください。どうかよろしくお願いいたします。m(__)m
- 締切済み
- JavaScript
- printf系の書式「w」ってなに?
Solaris上で動いているプログラムで以下のような記述があり、 これをLinuxで実行すると動きが異なります。 (Linuxでは"%02wd"という文字列が出力されてしまう。) 「w」ってどのような時につかうものでしょうか? また、このような書き方は有効なのでしょうか? char shelf_number[8]; int slot_number; sprintf(number_bf,"%s%02wd",shelf_number,slot_number);
- ベストアンサー
- C・C++・C#
- NSString文字列をprintfで出力するには
Objective-CでNSStringクラスの文字列をprintf関数で出力しようとするとコンパイルエラーになります。 どうすればprintfで出力できるようになるでしょうか。 実行環境はMacOSX。Xcodeをインストールしています。 ソースコードとエラーメッセージは以下です。 #import <Foundation/NSObject.h> #import <stdio.h> int main(void){ NSString *str01 = @"test"; printf("%s\n", [str01 UTF8String]); return 0; } <コンパイルエラーメッセージ> warning: format ‘%s’ expects type ‘char *’, but argument 2 has type ‘id’
- ベストアンサー
- その他(プログラミング・開発)
お礼
参考にさせていただきます。 回答ありがとうございました。