FILE*fp=fopen(file.c ifstream ifs(filename.c_str())...
c_str()\u4ec0\u4e48\uff1fC++\u4e2d\u4f7f\u7528string\u7c7b\u8868\u793a\u5b57\u7b26\u4e32\uff0cstring\u7c7b\u7684c_str\u65b9\u6cd5\u53ef\u4ee5\u8fd4\u56de\u7528C\u8bed\u8a00\u7684char *\u7684\u5f62\u5f0f\u8868\u793a\u7684\u5b57\u7b26\u4e32
ifstream ifs(filename.c_str()); // \u7528\u6587\u4ef6\u8f93\u5165\u6d41\u8bfb\u5165\u6587\u4ef6\u540d\u4e3afilename\u8fd9\u4e2a\u6587\u4ef6
string s; // \u5b9a\u4e49string\u7c7b\u5bf9\u8c61
while( ifs >> s) // \u5faa\u73af\u5728\u6587\u4ef6\u8f93\u5165\u6d41\u4e2d\u8bfb\u5165\u4e00\u4e2a\u5b57\u7b26\u4e32
cout << s << "\n"; // \u8bfb\u5165\u4e00\u4e2a\uff0c\u6253\u5370\u4e00\u4e2a\uff0c\u5e76\u6253\u5370\u6362\u884c
fopen 第一个参数要求是const char *
如果想传 string 给 fopen
需要使用成员函数c_str() 将string 转化成const char *
fopen 是打开文件
c++的string 类为我们提供了一个转换函数 c_str().
该函数c_str()能够将 string 字符串转换为C风格的字符串,并返回该字符串的 const 指针(const char*).
为了使用C语言中的 fopen() 函数打开文件,必须将 string 字符串转换为C风格的字符串.
绛旓細intfile_size(char*filename){ FILE*fp=fopen(filename,"r");if(!fp)return-1;fseek(fp,0L,SEEK_END);intsize=ftell(fp);fclose(fp);returnsize;}
绛旓細鍚﹀垯浼氭寚鍚戝師鎵撳紑鏂囦欢鍦板潃 return 0; } --- #include "stdlib.h" #include "stdafx.h" #include "stdio.h" void main() { FILE *fp; char str[128]; if((fp=fopen(
绛旓細int main(){char ch;FILE* fp;char fname[50]; //鐢ㄤ簬瀛樻斁鏂囦欢鍚峱rintf("杈撳叆鏂囦欢鍚嶏細");scanf("%s",fname);fp=fopen(fname,"r"); //鍙緵璇诲彇if(fp==NULL) //濡傛灉澶辫触浜唟printf("閿欒锛");exit(1); //涓绋嬪簭}//getc()鐢ㄤ簬鍦ㄦ墦寮鏂囦欢涓幏鍙栦竴涓瓧绗hile((ch=getc(fp))!=...
绛旓細include <stdio.h> void main(){FILE *fp;int a[10]={1,2,3},i,n;fp=fopen("dl.dat","w");//鎵撳紑杩欎釜鏂囦欢浠ュ啓鐨勬柟寮 for(i=0;i<3;i++) fprintf(fp,"%d",a[i]);//鎶123渚濇鍐欏叆杩欎釜鏂囦欢 fprintf(fp,"\n"); fclose(fp);//鎶婅繖涓枃浠跺啓鍏ョ鐩橈紝骞朵笖鍏抽棴鏂囦欢 fp=fopen("...
绛旓細3.渚嬬▼锛歩nclude<stdio.h>#define F_PATH "d:\\myfile\\file.dat"int main(){ FILE*fp=NULL;//闇瑕佹敞鎰 fp=fopen(F_PATH,"r"); if(NULL==fp) { return -1;//瑕佽繑鍥為敊璇唬鐮 } fclose(fp); fp=NULL;//闇瑕佹寚鍚戠┖锛屽惁鍒欎細鎸囧悜鍘熸墦寮鏂囦欢鍦板潃 return 0;...
绛旓細瀹炰緥锛歩nclude<stdio.h> define F_PATH "d:\\myfile\\file.dat"int main(void){ FILE*fp=NULL;//闇瑕佹敞鎰 fp=fopen(F_PATH,"r");if(NULL==fp){ return -1;//瑕佽繑鍥為敊璇唬鐮 } fclose(fp);fp=NULL;//闇瑕佹寚鍚戠┖锛屽惁鍒欎細鎸囧悜鍘熸墦寮鏂囦欢鍦板潃 return 0;} ...
绛旓細#define F_PATH "d:\\myfile\\file.dat" int main(void) { FILE*fp=NULL;//闇瑕佹敞鎰 fp=fopen(F_PATH,"r"); if(NULL==fp) { return -1;//瑕佽繑鍥為敊璇唬鐮 } fclose(fp); fp=NULL;//闇瑕佹寚鍚戠┖,鍚﹀垯浼氭寚鍚戝師鎵撳紑鏂囦欢鍦板潃 return 0; } 鏈洖绛旂敱绉戝鏁欒偛鍒嗙被杈句汉 椤惧嚖绁ユ帹鑽 涓炬姤| 绛旀绾犻敊 ...
绛旓細鎵цfopen鍑芥暟鏃跺彂鐢熼敊璇紝鍒欏嚱鏁扮殑杩斿洖鍊兼槸NULL锛堝嵆0锛夈傛枃浠堕『鍒╂墦寮鍚庯紝鎸囧悜璇ユ祦鐨勬枃浠舵寚閽堝氨浼氳杩斿洖銆傝嫢鏋滄枃浠舵墦寮澶辫触鍒欒繑鍥濶ULL锛屽苟鎶婇敊璇唬鐮佸瓨鍦╡rrno涓俧open鍑芥暟鏄墦寮涓涓枃浠讹紝鍏惰皟鐢ㄧ殑涓鑸舰寮忎负锛氭枃浠舵寚閽堝悕锛漟open锛鏂囦欢鍚嶏紝浣跨敤鏂囦欢鏂瑰紡锛夛紱鈥滄枃浠舵寚閽堝悕鈥濆繀椤绘槸琚0鏄庝负FILE绫诲瀷鐨勬寚閽堝彉閲...
绛旓細1銆乫open鍑芥暟鐨勮繑鍥炲硷紝杩斿洖鎸囧悜璇ユ祦鐨勬枃浠舵寚閽堬紝濡傛灉鏂囦欢鎵撳紑澶辫触锛屽垯杩斿洖NULL锛屽苟灏嗛敊璇唬鐮佸瓨鍌ㄥ湪errno涓FILE*input;input = fopen("data3", "r");if (NULL == input){ perror("data3");exit(EXIT_FAILURE);} 2銆乫close鍑芥暟娌℃湁杩斿洖鍊 fclose()鍔熻兘锛氬叧闂竴涓祦 澶存枃浠讹細#include<stdio...
绛旓細FILE*fp; fp=fopen("in.dat","r") ;璇存槑锛氱敤鍙鐨勬柟寮忔墦寮鏂囦欢in.dat銆俧open锛堬級灏辨槸鍑芥暟鍟娿