C言語なら俺に聞け 140 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ 6f8c-8ulf)
垢版 |
2017/05/11(木) 22:20:03.99ID:cn414UR90
C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/

C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf

C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html

C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/

JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/


http://echo.2ch.net/test/read.cgi/tech/1487757355/
http://www.geocities.jp/c_cpp_cs/about_c/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
603デフォルトの名無しさん (ワッチョイ b797-+bbG)
垢版 |
2017/06/26(月) 21:47:17.10ID:Ntea+VQr0
>>602
CASLUではないとしてもあの程度のコンピュータのアセンブラなら言語としては単純。
2017/06/26(月) 23:17:34.88ID:PKYMbkgl0
並列動作とか遅延ジャンプとか出てこないし
レジスタの塊みたいな奴に比べりゃ可愛いよな
605デフォルトの名無しさん (ワッチョイ d7c1-NIhq)
垢版 |
2017/06/26(月) 23:19:06.55ID:31mN8SV/0
Visual Studio community 2017をC言語のコンパイラとして使えないんでしょうか?
2017/06/26(月) 23:21:42.03ID:Th5Kxani0
>>602
当然、COMP-XかCOMETかという話だろう。
2017/06/26(月) 23:27:10.92ID:go0auT85d
>>605
C言語にしたいなら、拡張子を.cにしろよ。
608デフォルトの名無しさん (ワッチョイ d7c1-NIhq)
垢版 |
2017/06/26(月) 23:47:45.66ID:31mN8SV/0
>>607
コンパイラとしてどうやって使っていいのかわかりません。
コードを書いてもどうやって実行すればいいのか解りません・・・
今は勉強用にEasyIDECって言うのを使ってますがこれはプログラムの実行はできるんですが
ファイルを読み込むタイプのプログラムを実行できないしexeファイルも作れません。
勉強しながら早いうちからexeファイルとか作れる環境で慣れたいんですがやりかたがわからなくて・・・
よければ教えてください
2017/06/27(火) 00:20:49.40ID:aHvsmlwPd
>>608
IDE使う前にMSYS2+MinGWのコマンドラインでhello would書いて特訓しろ。
2017/06/27(火) 00:37:59.30ID:1mHdD+S50
またQZが自演してるな
たのむからゴミコードは出すなよ
611デフォルトの名無しさん (ワッチョイ 376c-dFnT)
垢版 |
2017/06/27(火) 08:53:16.46ID:ucAV+SpP0
>>564
試験対策ならJavaだろうなぁ
俺はJavaで合格した。

派遣のプログラマーで仕事もらうには、合格必要だぜ。
今は、派遣はヤメたけど、派遣の経験は良い勉強になったわぁ。
2017/06/27(火) 09:31:49.14ID:jtm5ziJ2M
>>609
MSX2+ とか笑かすわ。
613デフォルトの名無しさん (ワッチョイ 376c-dFnT)
垢版 |
2017/06/27(火) 10:00:06.40ID:ucAV+SpP0
>>609
トグル・スイッチをパチパチやってプログラミングするところからやる?
パチパチやってBoot Loaderを打ち込むのからやると、全てが判るよ。
614デフォルトの名無しさん (ワッチョイ 376c-dFnT)
垢版 |
2017/06/27(火) 10:03:11.75ID:ucAV+SpP0
十進カウンタや、JKフリップ・フロップをNANDを組み合わせて作る事は今でもやるんだろ?大学で。

学生実験とか?最近の大学では無いの?
2017/06/27(火) 10:47:01.95ID:ZcFCap/E0
加算器とか情報算数かな
616デフォルトの名無しさん (ワッチョイ 376c-dFnT)
垢版 |
2017/06/27(火) 10:57:18.19ID:ucAV+SpP0
>>615
それ、なんちゅう授業?授業のタイトルは?
2017/06/27(火) 12:53:23.72ID:GRUOkSLcd
>>612
ジジイ乙
2017/06/27(火) 12:54:46.79ID:/HeVfsPd0
ハーフアダー フルアダー を論理回路で
2017/06/27(火) 13:05:58.64ID:IF4g2E0D0
演算器の設計 - 加算器(Adder)
http://news.mynavi.jp/column/architecture/070/
演算器の設計 - キャリールックアヘッドアダー
http://news.mynavi.jp/column/architecture/071/
演算器の設計 - キャリールックアヘッドアダー(2)
http://news.mynavi.jp/column/architecture/072/
パラレルプリフィックスアダー
http://news.mynavi.jp/column/architecture/073/
パラレルプリフィックスアダー(2)
http://news.mynavi.jp/column/architecture/074/
パラレルプリフィックスアダー(3)
http://news.mynavi.jp/column/architecture/075/
Lingアダー
http://news.mynavi.jp/column/architecture/076/
アダーの実装に関して
http://news.mynavi.jp/column/architecture/077/
620デフォルトの名無しさん (ワッチョイ 9fc1-NIhq)
垢版 |
2017/06/27(火) 17:08:46.44ID:HjxjU0LK0
exeの作り方は結局わかりませんでしたが
textファイルを読み込んで結果を吐き出すプログラムはvisual stadioで何とか実行できました
スレ汚しすみませんでした
2017/06/27(火) 17:43:30.17ID:jtm5ziJ2M
プロジェクトの下の debug か release の下に出来てるだろ。
2017/06/27(火) 17:57:16.27ID:HOHNeZU7M
>>616
こんなやつじゃね?
http://risyu.is.it-chiba.ac.jp/syllabus/syplssb302
623デフォルトの名無しさん (ワッチョイ 9fc1-NIhq)
垢版 |
2017/06/27(火) 18:21:29.40ID:HjxjU0LK0
>>621
よく見たらdebugフォルダの中にアプリケーションって言うのがありました
これがexeファイルなんですね(*´ェ`*)
2017/06/27(火) 19:29:10.53ID:eugTAuNDM
char *hoge にファイル名が入っていて、
printf("%s",hoge);とするとファイル名が表示されます
このファイル名を
http://dqn.sakusakutto.jp/2013/04/c_kr_stack.html
のpush()に引数として入れたいのですが、型が合いません

どなたか教えて下さい
2017/06/27(火) 20:00:27.36ID:7v0X4ZTWM
すみません自決しました
2017/06/27(火) 20:07:10.41ID:bJ//gE7J0
自決しちゃったのか
2017/06/27(火) 22:36:09.51ID:pewKiBDj0
御冥福を
2017/06/27(火) 22:38:45.02ID:YYgE0wDj0
せっかくだから辞世の句を詠んでからにしよう
2017/06/28(水) 01:29:20.62ID:CBwCtPCV0
>>608
EasyIDEC ってこれのことだよな?
http://9cguide.appspot.com/p_9cide.html
だったらこれはコンパイラがtccだからちゃんとexe作った上で実行している筈だしファイルの読み書きも全く問題なくできる筈だぞ。
630デフォルトの名無しさん (アウアウウー Sa9b-h10b)
垢版 |
2017/06/28(水) 07:58:22.81ID:na5KYPACa
>>608
コマンドラインからコンパイルしたいならVCは何かバッチ実行したらclでコンパイル出来たはず。
面倒だったらbccに乗り換えて見ては。
setbccってツールも併せて検索して使えばパス通しまでしてくれる。
2017/06/28(水) 10:17:50.38ID:xb2y2Mwj0
ベン図とかカルノー図とか
スレチ過ぐる
632デフォルトの名無しさん (ワッチョイ d7c1-NIhq)
垢版 |
2017/06/28(水) 17:26:43.67ID:duiTP6800
>>629
自分ではtxtファイルの読み込み方が解りませんでした・・・
あとこんな感じで使えたらいいんですけど
http://9cguide.appspot.com/easyidec7.jpg
自分の環境(win7)だと立ち上げた後
http://light.dotup.org/uploda/light.dotup.org459505.jpg
こんな感じでスクリプトエラーが9個ぐらい出るし理想の使い方ができないんです・・・

>>630
Borland C++ Compiler 5.5がもう配布されてなくて代わりに
https://www.embarcadero.com/jp/free-tools?redirect=http://www.codegear.com/jp/downloads/free/cppbuilder
こんなのが配布されていてこれのC++Compilerをダウンロードしてみたんですがなんか違う気がします。
http://forest.watch.impress.co.jp/article/2002/10/24/cwohajimeyou.html
これもBorland C++ Compiler 5.5を要求されますが参考サイトと同じような設定ができなくてあきらめた経緯もあります。

今はvisual studio community 2017を使っていますがエラーを山のように吐いてくれて勉強になるしテキストファイルを読み込んだり吐き出したりする
プログラムも作れたりととりあえず初心者として目指すレベルには十分やりたい事ができるのでこれでいいかなと思っています。

レスありがとうございました。
633デフォルトの名無しさん (ワッチョイ d7c1-NIhq)
垢版 |
2017/06/28(水) 18:02:23.14ID:duiTP6800
>>632はこっちじゃなくて
http://forest.watch.impress.co.jp/article/2002/10/24/cwohajimeyou.html
こっちでした
http://forest.watch.impress.co.jp/article/2007/02/07/cwohajimeyou2.html

EasyIDECも写真のように右にいろいろ出るなら使いたいんですけど、よく解らないんですよね・・・
634デフォルトの名無しさん (アウアウウー Sa9b-h10b)
垢版 |
2017/06/28(水) 20:06:32.41ID:AA6Kh2Ana
>>632
setbcc新しい方に対応してないんか。
フォルダ名書き換えるだけやから対応すりゃ良いのにね。
gccとかは-oファイル名ってしないとa.exeになっちゃうけど、確かインストール時にパス通してくれるはず。
(最悪、binだけ自分でパス通せば行けたはず。ライブラリのパスをコンパイラの設定ファイルに通すとか、そういう面倒はなかった)
2017/06/28(水) 22:11:54.96ID:SRIFWNkc0
>>633
ずぶの素人なんだろ?
だったら、そういうのはチュートリアルを一つずつやっていくもんだ。
https://msdn.microsoft.com/ja-jp/library/szatc41e(v=vs.110).aspx
https://msdn.microsoft.com/ja-jp/library/zftbwa2b(v=vs.110).aspx

ただしMSはVC++にはやる気を出してない(基本あれはプロ用)なので、
チュートリアルが整備されているC#等を使ってIDEの使い方を学んだ方がいい。
https://msdn.microsoft.com/ja-jp/library/jj153219.aspx
https://msdn.microsoft.com/ja-jp/library/dd492135.aspx
https://msdn.microsoft.com/ja-jp/library/dd492171.aspx

IDEに関してはVSがかなりいいから、そんな古いマイナーIDEなんて使わずに、
最初からVSでやったほうがいい。

ただ、環境整備をずぶの素人がやるのは辛い。
というか、周りに誰かいないのか?居るのなら拝み倒してやってもらえ。
そんなところで苦労しても何の足しにもならない。
とっとと実行環境を整備して、ガンガンコード書いて動かして試さないと意味が無い。

周りに誰も居ないのなら、マジでチュートリアルを頭から全部一つずつやっていけ。
そしたらいつか、ああもういいか、って思うときが来るから、
その時にチュートリアルを卒業し、自分のプロジェクトの開発を始めろ。
2017/06/28(水) 22:28:47.16ID:SRIFWNkc0
>>633
ああごめん、VC++もチュートリアルあったわ。
いつもどおりハロワだが。
https://msdn.microsoft.com/ja-jp/library/jj620919.aspx

C++だからstdafx.hになっているが、
VC++はそこらへんごちゃ混ぜに出来るので(この意味は今は分からなくていい)
#include "stdio.h" すれば printf とかも普通に使えるはず。
まあがんばれ。
637デフォルトの名無しさん (ワッチョイ d7c1-NIhq)
垢版 |
2017/06/28(水) 23:04:41.12ID:duiTP6800
>>636
ありがとうございます
チュートリアル読みました。
エラーが出るとはいえEasyIDECを使ってある程度流れがわかっていたのとvisualstudioを何時間か弄っていたので
チュートリアルは多分理解できたと思います
今はwin32コンソールアプリケーションの空のプロジェクトを作ってソースファイルのところに.cファイルやtextファイルを追加する感じで使っていて
それなりに自分の目的にあうようには使えてるとは思います・・・多分
だからコードをひたすら書いて、理解を深めようと思っているところです。
また解らないことがあったら質問させてください!!
2017/06/28(水) 23:55:03.72ID:SRIFWNkc0
>>637
いや見りゃ分かるが君はこのスレで質問すべきレベルに達してない。
つっても他に聞く相手が居ないのならどうしようもないが、
質問されてもさすがに相手するのが嫌になるレベルだというのは自覚しろ。
だから質問したところで回答があるかどうかはまた別の話だ。

君は分かっていないだろうが、
レベルの低い奴(今回は君)に対して回答することはスレに悪影響を及ぼす。
単純には、そういうレベルの奴が集まる方向に圧力がかかり、結果的に上級者が逃げ出す。
俺はこのスレの常連ではないから、俺がこのスレに対して影響を及ぼすのは本意ではない。
だから今後は俺は君の質問は無視する。
それでも君が質問するのも自由だし、それに対して回答するのも他住民の自由だが、
見たとおり、適当にあしらわれて終わりになるはずだ。
それがスレのレベルを下げないための適切な行動だからだ。

ところが君はどうやら本気で学びたいようだ。
だからとりあえず回答したが、今後は俺は回答しない。自分で勝手に学べ。
今はそれが出来るだけのリソースがWeb上にある。
最新IDEとWebを使うのが一番無駄に引っかからなくていいからそうしろ。

IDE自体の質問なら、VSならスレがある。
というかバージョン毎に12スレもあるからそっちで聞け。
http://mevius.2ch.net/test/read.cgi/tech/1491618774/

> win32コンソールアプリケーション
多分、1-100まで足してみようとか、そういうのからやってるんだろ?
それならこれで合ってるから、まあがんばれ。
とりあえずブレークポイント/ステップ実行/ウオッチが使えれば何とかなるだろう。
後は適当に弄繰り回していれば分かるようになる。
IDEなんて基本的に使い方は同じだから、最初から高機能IDE(今回はVS)に慣れたほうがいい。
2017/06/29(木) 00:08:02.54ID:GSOqdYxT0
こんな感じでQZが煽られ発狂
640デフォルトの名無しさん (ワッチョイ 2d6c-ddzC)
垢版 |
2017/06/29(木) 08:26:00.68ID:7eb8fA4L0
>>635
すげぇなぁ、Microsoft.
日本語チュートが充実じゃん。
641デフォルトの名無しさん (ワッチョイ 2d6c-ddzC)
垢版 |
2017/06/29(木) 08:43:40.13ID:7eb8fA4L0
stdafx.hをみて恐れをなしてVisual Basicを選択したのを思い出した。
その後、Obj-C -> Swiftに流れたが、今VC++さわれば楽しめるかもしれん。

ただし、Microsoft仕様のC++が今どうなってるのか?不安。
それと、Windows環境ってAPI Referenceを気軽に検索する方法があるのか?

俺がVC++触っていた時は、msdn developer’s networkっていう重いAPI Viewerがインストールされて、ちょっと検索するにもエライ待たされて閉口したんだが。
642デフォルトの名無しさん (ワッチョイ 2d6c-ddzC)
垢版 |
2017/06/29(木) 08:48:30.60ID:7eb8fA4L0
VC++って、C++11/14/17に準拠してるんだって。部分的に。
VC++も進化してるんだ。知らんかった。
2017/06/29(木) 08:49:10.03ID:kjfsQTVLd
そう、部分的に
644デフォルトの名無しさん (アウアウエー Sa4a-kiAr)
垢版 |
2017/06/29(木) 09:07:42.11ID:OIGMpkDEa
その辺の準拠率はg++かclangだな。
c99対応コンパイラは皆無だっけ?
2017/06/29(木) 09:09:29.51ID:NPwerNyC0
C++/CLI
https://ja.m.wikipedia.org/wiki/C%2B%2B/CLI
2017/06/29(木) 09:19:32.95ID:Tswd9qCud
emacsから離れられん
647デフォルトの名無しさん (ワッチョイ 2d6c-ddzC)
垢版 |
2017/06/29(木) 09:20:48.70ID:7eb8fA4L0
CCmdTarget UIResponder
CWnd UIWindow
CView UIView
CEditView UITextView
CButton UIButton
CWinApp UIApplication

MFCとUIKitの対応関係はこんな感じか?

クラス階層図はかなり違うなぁ。継承を使ってカスタマイズしていく設計と、デリゲートを使ってカスタマイズしていく設計との違いから来るのかな?
648デフォルトの名無しさん (ワッチョイ 2d6c-ddzC)
垢版 |
2017/06/29(木) 09:26:19.20ID:7eb8fA4L0
VC++がプロ仕様と言うのだったら、Xcodeも同じ様なもんだな。
String構造体が、
Conforms To

Comparable
CustomDebugStringConvertible
CustomPlaygroundQuickLookable
CustomReflectable
CustomStringConvertible
CVarArg
Equatable
ExpressibleByExtendedGraphemeClusterLiteral
ExpressibleByStringLiteral
ExpressibleByUnicodeScalarLiteral
Hashable
LosslessStringConvertible
TextOutputStream
TextOutputStreamable
こんだけのプロトコルに準拠しているって、仕様を見て、どれだけのヤツがピントくるかな?
おまけに山ほどイニシャライザがあって、初心者はびっくりするだろなぁ。
C++から来た奴は、構造体にイニシャライザ?って思うのかな!
2017/06/29(木) 09:37:55.49ID:NPwerNyC0
https://msdn.microsoft.com/ja-jp/library/system.string(v=vs.110).aspx?cs-save-lang=1&cs-lang=cpp#code-snippet-1
650デフォルトの名無しさん (ワッチョイ 2d6c-ddzC)
垢版 |
2017/06/29(木) 10:36:02.44ID:7eb8fA4L0
>>649
あのぉー。Visual Studioのリファレンスって、offlineでも引く事できますか?
例えば、4Gの携帯回線が細い場所でも、リファレンスを閲覧出来るのでしょうか?

リファレンスをローカルの開発機へインストールできますか?
2017/06/29(木) 10:52:35.22ID:NPwerNyC0
オフラインのヘルプビューアもあるけどコンテンツ内容が古い
オンラインでもそれほど重くはないので4G回線ならWebでも問題ないだろ
652デフォルトの名無しさん (ワッチョイ 1911-CicO)
垢版 |
2017/06/29(木) 17:10:15.78ID:wGgfLCtF0
***SLAMO***

}

000-"F","TAP","0","1M","L","E-07"/0B"[9BA%]"^"2*73B"="0"/"9GA"
001-"Do"[[[%9DE=HUF%%!%$0B1OTU"NE"]]]<\b>
002-<<%!!!HNDEL%!0DAI@$7[1B]!0#!@>>
3000-{{1\B%HUF!0$$\%6/0Q\%6/GA[[7BU]]%9TE!%$en$}}


---

[[[C%%]]]
}

000-"5802"/"α"="0.1888412376155482"%en{
2017/06/30(金) 00:41:38.72ID:OFeLP1+80
以下のコードように、呼び出し先の関数で作った配列をポインタとしてmain関数に返すプログラムでwarningが出るので、調べてみたところ
・呼び出し先の変数は一時的に保管される領域に入っている
・一時的に保管される領域はmain関数に戻ると消える
・main関数にリターンされるのはあくまで配列の開始位置なので、この書き方では配列が消える恐れがある
という情報を目にしました。
以下のようなコードであればどのように改善すればいいでしょうか。
宜しくお願いします。

/*main.c*/
int main()
{
int *hoge=sub();
}

/*sub.c*/
int *sub()
{
int b[10];
return b;
}
2017/06/30(金) 01:03:42.29ID:obNwHzFda
mainにbの配列を宣言してsubにポインタを渡し中身を書き換える
もしくは
sub内のbをstatic intにする
2017/06/30(金) 01:17:27.06ID:RtmcppLUM
もしくは
mallocで確保した領域を返し、freeするのは呼び出し元の責任にする
2017/06/30(金) 04:27:36.41ID:8CWbZ/OEd
null pointer
2017/06/30(金) 05:56:01.96ID:sS6ajRjO0
呼び出し元で寿命を管理すべきなので、
mainに int b[10]; と宣言してsubにbのポインタを渡す
2017/06/30(金) 08:37:20.11ID:Zx9hbpt8M
別にどっちで管理してもいい
2017/06/30(金) 09:33:09.99ID:OFeLP1+80
>>654 >>655 >>657
ありがとうございます!!
2017/06/30(金) 09:40:38.20ID:b/sHRIH80
構造体で包んで値返し
typedef struct { int b[10]; } foo_t;
foo_t sub(void) { foo_t a; return a; }
2017/06/30(金) 09:44:31.82ID:RtmcppLUM
>>657
strdup使わない派?
2017/06/30(金) 10:43:50.08ID:12icUynjd
Cでprintfみたいな可変引数関数のラッパー
を可変引数で作りたいです。
コンパイラの実装に依存しない書き方って
有りますか?
2017/06/30(金) 11:24:03.18ID:zIElKXKqH
>>662
それができないからvprintfみたいなラップされる専用の関数ができた
2017/06/30(金) 11:37:38.99ID:12icUynjd
やっぱそうですか、残念。
ターゲットの関数はソース無いし、
vprintfみたいなのは用意されてないです。
2017/06/30(金) 11:51:41.54ID:vgqCM8Lxd
>>656
ガッ
2017/06/30(金) 12:52:04.96ID:X/gd7WZi0
可変引数関数を記述するだけなら stdarg.h で事足りるけど

printf のフォーマット文字列解釈して 文字に置き換える部分を
そのまま利用したいとなると、vsprintf の有無次第だよな・・・
2017/06/30(金) 17:00:50.82ID:sS6ajRjO0
>>661
状況によるけど、malloc/freeはコストが大きいので、使わなくて済むなら使わない
668デフォルトの名無しさん (ワッチョイ 2d6c-ddzC)
垢版 |
2017/06/30(金) 17:07:02.99ID:BBkM2EA10
>>667
コスト高いの?本当に!

高いのはSystem Callのこれじゃぁ?
sbrk/mmap/VirtualAlloc等
2017/06/30(金) 17:27:47.82ID:sS6ajRjO0
>>668
不必要なら避ける癖ついてたなあ
厳密に検証してないが、確保するサイズにもよるけど10%ぐらい違う
しかし関数コールは減らした方がいいのは明らか
2017/06/30(金) 18:45:37.58ID:I/Y6yRYUM
>>668
高い場合がある
と言う方がより正確かと
なので組み込みだと禁止してたり独自のルーチン組み込んでたりする
2017/06/30(金) 20:10:41.26ID:caqhD/Ov0
int b[10]とmallocではmallocの方が常にコストは高いけどな。
前者は最適化無しで1命令、最適化後は0命令。
後者はK&R的軽量実装でも10〜1000命令は必要になる。
10%ってのは他含めてコミコミの計測結果だろ。確保のみなら喧嘩にならん。
2017/06/30(金) 20:23:10.05ID:Hz970lyir
ガベージコレクタだって高コストだしな。自分でメモリを管理するのが一番安いw
2017/06/30(金) 20:33:40.33ID:APIJ3en80
アセンブラ時代思い出すなぁ。
2017/06/30(金) 23:38:17.22ID:yb1eWQ160
コストが高いからalloca()が出来たんだし
2017/07/01(土) 00:12:13.52ID:bUPyefPgM
>>638
もちつけ。おまいださいぜ
2017/07/01(土) 02:56:34.34ID:PLwoIwzod
Windows環境のMINGWです
\nをASCII文字コードにするとASCII表の通り10になりますが、
Windowsの改行コードCR+LFですよね?
UNIX環境ならLFつまり10になるのはわかりますが、何故Windows環境でも10なのでしょうか?
2017/07/01(土) 08:20:28.99ID:PrUYVLVg0
\nをprintしたりした場合に改行になるだけであって、\nが10なのは変わらない。
2017/07/01(土) 08:40:33.80ID:EmOg/tlYd
>>677
ありがとうございます
\nが10になるのはCR+LFでもLFでも同じだということですか?
2017/07/01(土) 13:13:17.56ID:FWbGo/9j0
\nは改行を表しその値は(ASCIIなら)10
printfとかの入出力するときにunixなら何もしないがwindowsではCR+LFと変換する
2017/07/01(土) 14:26:57.37ID:jAe4uSb20
出力先のファイルポインタがクックドモードの時だけ変換される
2017/07/01(土) 15:56:17.04ID:9IpZzPucd
>>679
>>680
ありがとうごぞいます
クックドモードも調べてすっきりしました
2017/07/04(火) 18:08:24.69ID:K9JgJTrT0
[[[C++]]]
}

001-GOM#\%71/#1,16,2,M,BL,SAJ%\*%U,615325,6,11,62,364,3,21,673,!\0.1,11.5,78,21,6%<<<\BSA\>0>>>%11.27,21,0,73.561,2,3,4,6,1,{\!end
2017/07/04(火) 23:36:19.93ID:ydrc2aV60
テキストファイルは、CR + LFでも読み込んだらLFだけになる。書き込むときCR + LFになる
バイナリファイルは、そんなことにならない

テキストエリアで改行するなど、ファイルとは関係ない場合、CRが必要になる場合がある
2017/07/05(水) 12:59:27.11ID:63hLHVD1M
初心者の誤った回答の典型
685デフォルトの名無しさん (ワッチョイ 6e1c-4/kT)
垢版 |
2017/07/05(水) 15:35:27.26ID:4h6UtxrL0
ファイルの属性じゃねえもんな
2017/07/06(木) 04:58:28.75ID:pM9IP2NJ0
教えて下さいm(_ _"m)

size_t n;
n = (int)n < 0 ? -n : n; /* quick absolute value check */

"<" や "? :" の演算子は調べて分かったのですが、(int)n の部分は
どういう処理を行いますか?
intって宣言するものが、かっこで囲まれていて、なんだこれ!
っていう状態です。
687デフォルトの名無しさん (ワッチョイ ff1c-2mCk)
垢版 |
2017/07/06(木) 05:47:36.98ID:CwAIhoRS0
キャストだよ
本来size_t型のnを、その場だけintてことにしてくれって要求

ただし本当にintになっちまうわけじゃないから
(int)n = n < 0 ? -n : n; みたいに
代入先にしようとするとエラーだ
コンパイラによっては通るのがあるけどそれは非標準
2017/07/06(木) 05:57:41.52ID:pM9IP2NJ0
>>687
ありがとうです!
キャストですね。
size_tからintに一時的な変換ですね。
双方のメモリー上の大きさが違う気がするんですけど、僕の環境でどうなるのか調べてみます。
2017/07/06(木) 08:10:55.85ID:rcg+ZZ7N0
何がしたいコードなのか意味がわからない
2017/07/06(木) 08:12:31.54ID:TeNYF/iwM
nが負になりうるならなんでsize_tで宣言するんだろ
691デフォルトの名無しさん (ワッチョイ 9f8f-gRQY)
垢版 |
2017/07/06(木) 08:30:53.10ID:KLsItAo20
ssize_t が標準に欲しいところだよね。
2017/07/06(木) 08:36:29.39ID:c6kgU9bA0
キャストを覚えろ
キャストしない事を覚えろ
キャストをすこしだけする事を覚えろ
2017/07/06(木) 08:37:13.77ID:kIxohS2+M
>>689-690
単なるサンプルコードだろ
そもそもそのまま実行したら未初期化のnを参照することになるし
2017/07/06(木) 08:41:41.93ID:kIxohS2+M
>>691
sizeof と言うコンパイラ組込演算子の戻り値の型がコンパイラに組み込まれていない違和感
695デフォルトの名無しさん (ワッチョイ ff1c-2mCk)
垢版 |
2017/07/06(木) 09:45:19.82ID:CwAIhoRS0
>>694
いや組み込まれているが
それが具体的に何型なのかを
コンパイラの実装者が明らかにせよと
規格が要求しているということだ
2017/07/06(木) 11:03:13.91ID:TUAsW00PH
>>693
出典はここだな。
https://stackoverflow.com/questions/10204471/convert-char-array-to-a-int-number-in-c

問1: この回答者がnの絶対値をとりたくなったときの気持ちを3行で答えよ。
2017/07/06(木) 12:41:49.84ID:kIxohS2+M
>>695
> いや組み込まれているが
「コンパイラ(プリプロセッサじゃなくて)」には組み込まれてないだろ

> それが具体的に何型なのかを
> コンパイラの実装者が明らかにせよと
> 規格が要求しているということだ
だからなに?
698デフォルトの名無しさん (ワッチョイ f76c-QYYo)
垢版 |
2017/07/06(木) 12:58:54.02ID:Ot0nxXPI0
size_tは__darwin_size_tでトドのつまり、unsighed longだって。
2017/07/06(木) 13:20:12.73ID:SSOSMdMWM
>>697
どうであれば組み込まれてることになるの
size_t n がコンパイルできることじゃないんだよね?
2017/07/06(木) 14:53:10.10ID:m/Ia1fy10
>>691
反物質のサイズでも記述する気か?w
701デフォルトの名無しさん (アウアウウー Sa5b-pw7F)
垢版 |
2017/07/06(木) 15:09:30.84ID:F+RVqvnpa
【環境】
CS+ + RX62N + E1エミュレータ
【言語】
C言語

上記にてprintf()でCS+のデバッグウィンドウに出力するにはどうすればいいですか?
2017/07/06(木) 15:37:45.25ID:H/fupZr5d
ここできくないようか?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況