cfree5中获取程序模板的快捷键是

cfree5中获取程序模板的快捷键是,第1张

windows键+R键。C-Free是一款集成开发环境(IDE),支持多种编译器的专业化C/C++,使用者可以轻松地编辑、编译、连接、运行、调试C/C++程序。C-Free是一款C/C++集成开发环境(IDE)。目前有两个版本,收费的C-Free50专业版和免费的C-Free40标准版。C-Free中集成了C/C++代码解析器,能够实时解析代码,并且在编写的过程中给出智能的提示。C-Free提供了对目前业界主流C/C++编译器的支持,你可以在C-Free中轻松切换编译器。可定制的快捷键、外部工具以及外部帮助文档,使你在编写代码时得心应手。完善的工程/工程组管理使你能够方便的管理自己的代码。

*统计字母出现频率,排序

*找出与给定字母最亲密的三个字母(真是麻烦啊…==)

*找出出现频率最高的五个单词

*输出结果到文件resulttxt

*都要统计排序…用map比较好

*用ifstream来读取文件

*把文件按行保存到vector里吧…为了第二个…

*istringstream来把行拆分成单词,把单词拆分成字母

*很显然第二个是重复的工作…定义成函数吧

*用ofstream写入文件

开工~

#include <iostream>
#include <sstream>    //istringstream
#include <fstream>
#include <map>
#include <vector>
int main()
{
    
    std::ifstream ifile("datatxt");
    if(ifileif_open()) { //当然要在文件存在并且能打开的情况( ̄▽ ̄")
        //第一步,读取文件并保存
        std::vector<std::string> file_content;
        std::string line;
        while(std::getline(ifile, line))
            file_contentpush_back(line);
        //第二步,统计
        std::map<std::string, std::size_t> wordCount;    //单词计数
        std::map<char, std::size_t> letterCount;    //字母计数
        for(const auto& word : file_content) {   //对于每行
            std::istringstream strin(word);
            std::string ww;
            while(strin >> ww) {    //拆分它
                ++wordCount[ww];    //计数
                std::istringstream charin(ww);
                char letter = 0;
                while(charin >> letter) {
                    ++letterCount[letter];
                }
            }
        }
        //输出
        std::ofstream ofile("resulttxt");
        ofile << "字母出现次数统计:"<<std::endl;
        for(const auto& i : letterCount) {
            ofile << ifirst << "\t" << isecond << std::endl;
        }
        ofile << std::endl << "出现次数最多的五个单词:" << std::endl;
        auto beg = wordCountbegin();
        for(;beg != beg+5;++beg) {
            ofile << beg->first << "\t" << beg->second << std::endl;
        }
    }else
        std::cout << "File open failed" << std::endl;
}
//我把这个统计最亲密的三个字母的函数写出来…(不过函数返回什么好呢==)
char countLeterInt(char ch, std::vector<std::string>& file_content)
{
    char count = new char[3]{0};
    std::map<char, std::size_t> IntLeterCount;    //用于统计
     //所谓相邻,是指左右相邻吧…
    for(const auto &line : file_content) {
    //抽出每一行(现在觉得还不如每一个单词的存,你自己改吧)    
        std::istringstream strin(line);
        std::string word;
        while(strin >> word) {
            auto pos = wordfind(ch);
            while(pos != std::string::npos) {
                //这里要防止访问越界
                if(pos == 0) {
                    ++IntLetterCount[word[pos+1]];
                }else if(pos == wordsize()-1) {
                    ++IntLetterCount[word[pos-1]];
                }else {
                    ++IntLetterCount[word[pos-1]];
                    ++IntLetterCount[word[pos+1]];
                }
                pos = wordfind(ch, pos+1);
           }
        }
       //好了手机没电了…总之接下来就是
       //IntLetterCount里虽然统计了相邻字母,但不是按出现次数排序的,而是按
       //字母的字典顺序排序的
       //加油吧~记得delete返回的指针
    }
}

问题:\r\n键盘上某些特定的键,在C-free 的编辑器里面无法输入(按键没有反应),如 tab 键,Backspace 键,enter 键等等\r\n\r\n解决方案:\r\n将C:\Documents and Settings\你的Widnows登录名\Application Data\C-Free\50 目录下的keysdat文件删除,然后将default_keysdat文件复制为 keysdat

用vb实现“绿色”软件
现在很流行“绿色”软件,不须要什么安装程序只要一个 EXE 文件就可以运行程序了,而在 VB 的编程中有许多地方需要调用第三方的控件(非常难用 API 函数搞定所有的功能),这就须要制做一个安装程序,把所需要的控件、DLL 文件或其他文件打包进去了,那么在 VB 中怎么用变通的方法实现“绿色”软件呢,请看示例:
1、主程序EXE
用 VB60 编写的程序,调用了 Winsock 控件,要是在没有安装VB50、60 的机器上运行则会出现错误,导致程序运行失败,这时如果按一般的方法,唯有把这个程序用VB50、60 的安装程序进行打包,不然唯有用用2的方法来解决了。
2、注册程序EXE
用 VB60 编写的程序,使用资源文件的方法,把 Winsock 控件封装到本程序中,在运行主程序EXE之前,先运行本程序,通过API函数GetSystemDirectory取得系统的Winddows\System的目录,然后把Winsock控件复制到该目录下,并用Shell来完成控件的注册。
⑴启动 VB60,在“外接程序→外接程序管理器”中加载“Visual Basic 6 资源编辑器”
⑵在 VB 资源编辑器窗口中,点击“添加自定义资料”,增加 Winsock 控件(C:\Winddows\System\nsckocx),再双击刚刚创建的自定义资源,d出”编辑属性”窗口,定义如下:
类型: “OCX”
标识号: 101
语言: 中文(中国)
⑶保存资源文件,写如下代码:
Option Explicit
Private Declare Function GetSystemDirectory Lib "kernel32" Alias "GetSystemDirectoryA" (ByVal lPBuffer As String, ByVal nSize As Long) As Long
Const MAX_PATH = 260 注释:定义足够长的字符串
Private Sub Form_Load()
Dim TempFile() As Byte
Dim FileNum As Integer
Dim TempDir As String
TempDir = GetWinSysDir 注释:自定义函数取得系统的 Winddows\System 的目录
TempFile = LoadResData(101, "OCX") 注释:用以从资源 (res) 文件装载若干可能类型的数据,并返回一个 Byte 数组
FileNum = FreeFile
Open TempDir

你打开一个 cmd 窗口
然后依次运行
G:
cd MyProject\little_test
test1exe
如果出错,请贴出出错提示
如果没出错(显示出Hello了),那就是你装的C-Free50啥的有问题
(PS 为啥要用这么非主流的IDE)

1、首先打开C-Free50,然后一个空白的C语言页面保存为switchc文件,继续输入一般的C语言的基础格式。

2、C语言的输入语句,首先定义一个整型数值,然后从外面写入这个值。#include <stdioh>main(){int a;printf("请输入一个1-5之间的数值: ");scanf("%d",&a);}这里的scanf() 就是从外面读入一个值给a。

3、要看下输入的值是不是赋值给了a,可以把a的值输出,如下图调试。从下图可以得出,a的值就是输入的值。

4、接着按照获得的值来执行相应的步骤,代码如下图。

5、从系统中输入一个数值,然后switch根据读到的数值判断应该做什么,注意,输入的值必须是定义的值,就比如本程序里面switch里面是一开始定义的aint a;printf("请输入一个1-5之间的数值: ");scanf("%d",&a);switch (a){}调试下程序,看看对不对。

把win8文档文件夹下的CFREE删除,然后重装一下输入法,如果你用的微软自带输入法,那就装一个新的输入法,重启电脑再打开CFREE试试,我是win81,正在运行CFREE
完美兼容。
不过VC++60也可以通过一些方法在win81上运行。百度


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/yw/13203514.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-06-20
下一篇 2023-06-20

发表评论

登录后才能评论

评论列表(0条)

保存