日々プログラミング言語の勉強をしている京四郎のブログ -17ページ目

日々プログラミング言語の勉強をしている京四郎のブログ

日々プログラムの勉強をしている人がプログラム関係の記事を書くブログ


hello.c

#include <stdio.h>

int main (){

    printf("hello world 2014\n");

    return 0;
}


001.c

#include <stdio.h>

int main (){

    int ret=0;//
    FILE *fp=NULL;
    char *cmdline="hello.exe";

    fp=_popen(cmdline,"w");

    if(NULL == fp)
    {
     //_pclose(fp);←ここにpcloseを書くとダメ、書くとバグ扱いになる
     printf("file open error ! \n");
     return 1;
    }

    _pclose(fp);

    return 0;
}


あじさい環境

OS:windows7 32bit (自作機)
コンパイラ:Borland C++ 5.5.1 for Win32


ブタ解説

_popenで別プログラムhello.exeを実行する。
_popenと_pcloseなのは、popenとpcloseではエラーが出るからである。


Error: 外部シンボル '_popen' が未解決(C:\2014\0601\003.OBJ が参照)
Error: 外部シンボル '_pclose' が未解決(C:\2014\0601\003.OBJ が参照)


お月様コンパイルと実行結果

c:\2014\0608>bcc32 001.c
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
001.c:
警告 W8004 001.c 22: 'ret' に代入した値は使われていない(関数 main )
警告 W8004 001.c 7: 'fp' に代入した値は使われていない(関数 main )
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland

c:\2014\0608>bcc32 hello.c
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
hello.c:
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland

c:\2014\0608>hello.exe
hello world 2014

c:\2014\0608>001.exe
hello world 2014

c:\2014\0608>


おやしらずQiitaに投稿した

【C言語】_popenで別プログラムを実行する win7 32bit

http://qiita.com/kyoshiro-obj/items/eebd91e9b650c0395560


チューリップ赤関連

http://ameblo.jp/kyoshiro-obj/entry-11867855011.html