JavaScript初心者の者です。
JavaScriptで、ある年月日(西暦4桁と月、日)からX年Xヶ月後の値を西暦4桁と月、日で返したいのですがどうしたらよいでしょうか。
こんにちは。
徳丸さん、こちらこそ今年もよろしくお願いします。
さて、お返事が遅くなりましたが、問題は解決しました。
ちょっと恥ずかしいのですが、簡単に報告させていただきます。
私は、BisonとFlexによって生成されたコードを次のように
インクルードしておりました。
#include "ytab.c" //Generated by Bison
#include "Lexyy.c" //Generated by Flex
int _tmain(int argc, ...)
{
...
return yyparse()
}
Flexの仕様書ファイル(*.l)では、トークン定義を使用するので
ytab.hをインクルードしており、これによってLexyy.cにも、その内容
およびYYSTYPEの再定義が展開されます。
一方で、Bisonの仕様書ファイル(*.y)ytab.cのほうでは、YYSTYPEの
定義をしていたので、ytab.hにその内容が出力されますが、ytab.cにも
YYSTYPEの定義が出力されていました。
結局、ytab.cのインクルードを別のファイル(stdafx.cpp)に移動したら、
YYSTYPEが再定義されているビルドエラーはなくなりました。
徳丸さんみたいにytab.hをyacc定義ファイル(*.y)でインクルードしては
いなかったので、??だったのですが、同じような原因だったみたいですね。
徳丸さんレスが大きなヒントになりました。
どうもありがとうございました。
すまっちさん、こんにちは。あけましておめでとうございます。
さて、このエラーは僕も経験しました。kmyaccなどでは出ないと記憶していますが、
bisonでは出るようです。
わたしが経験したケースですと、ytab.hをyacc定義ファイル(*.y)にてインクルードしている
場合にそれが起こり、インクルードを外せば期待通りに動くようになりました。
対症療法的で面白くありませんが、取り急ぎご報告まで。
こんにちは。
現在、FlexとBisonを使用して電卓等の簡単なプログラムを
試しているのですが、ビルドを通すのに四苦八苦しています。
問題の箇所というのが、Bisonの%unionを使って、yylvalを
複数のデータ型をサポート可能にしようとしたときに、ytab.hの
先頭に出力される、次のような共用体でYYSTYPEが再定義されている
というコンパイルエラーです。
typedef union {
float val;
} YYSTYPE;
expr.y(14) : error C2371: 'YYSTYPE' : 再定義されています。
異なる基本型です。
f:\workhistory2\yacclex\calc\expr_tab.h(3)
: 'YYSTYPE' の宣言を確認してください。
私の初歩的なミスや知識不足が原因かもしれませんが、
どなたかご教授ください。
ちなみに環境は Visual C++ 6.0でコンソールアプリケーション
を作成し、Bison&Flexによって生成されたコードをプロジェクトに
取り込んでおります。
Bisonは本サイトからダウンロードさせていただいたもの、Flexは
djgppのものです。
よろしくお願いします。
>そんなこと無いでしょう。
>djgppのサイトにあるやつを使えばイイのでは?
>それともよほど変な環境なのかなぁ。
教えていただいたdjgppのサイトから実行形式のものを入手できました。
どうもありがとうございました。
GNUのサイトからはソースコードしかダウンロードできなかったのですが、
もっといろいろ探してみるべきでした。
ちなみに環境は普通のWin32環境です。
年明けからまた再調査ですので、困った事があったら
またお助けください。
取り急ぎお礼まで。
すまっちさん、インプリメンタの部屋にようこそ。
また、斎藤さん、フォローありがとうございます。
私もflexは使ったことがないので、このようなフォローは助かります。
djgppは大昔使ったきりですし・・・
中々更新も進んでおりませんが、時々遊びにきてくださいね。
はじめまして。実は、キーボードを使わず、3つのテキストとボタンを使って文字入力したいと考えています。携帯電話でメールをするときのようなボタンを作れたらいいなと思っています。たとえば、「あ」行のボタンを押したら「あいうえお」の中から選んで決定のボタンを押したらテキストに入力されるといったものです。また、カタカナのチェックボックスをつくって、それをチェックしたらカタカナ入力ができ、A〜Zまでの文字も同じように大文字と小文字を入力できるようにしたいのですが。
>Flexは、ソースコードからビルドしなくてはいけないらしいということでした。
そんなこと無いでしょう。
djgppのサイトにあるやつを使えばイイのでは?
それともよほど変な環境なのかなぁ。
ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/flx254b.zip
はじめまして。
すまっちと申します。仕事でyacc/lex(Bison/Flex)を使わなくてはいけなくなり、
急遽いろいろ調査していた矢先、本HPを見つけました。
まだ調査を開始して3日目の素人ですが、このHPには、私が3日間で理解したこと
が明快に書いてあり、まさに「目から鱗」で思わず書き込まずにいられなくなり、
書き込みさせていただきました。
とりあえず今日わかったことは、Bisonの実行形式はいくつか入手可能ですが、
Flexは、ソースコードからビルドしなくてはいけないらしいということでした。
また寄らせていただきます。
西谷さん、正常動作したとのこと、よかったですね。
〉開発中のプログラムでBYACCが容量オーバーして実行できなないので
〉BISONに切替えようとしていますが、CYGWIN版は上手く行きませんでした。
この問題も解決したということでしょうか?だとしたらすごい成果ですね。