鱼C论坛

 找回密码
 立即注册
查看: 1339|回复: 12

[已解决]关于C语言函数的问题

[复制链接]
发表于 2018-12-25 08:35:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
在想使用某函数,但是并不知道它是在什么头文件里的要怎么办呢??(如果电脑没有网,无法上网的情况下)
最佳答案
2018-12-28 08:29:28
在IDE中写函数名(如果楼主确定函数名的话),然后右键点函数名,再点函数定义,就进入头文件了。看到头文件名就ok
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-12-25 10:45:57 | 显示全部楼层
平常收集的文档,要不就没办法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-25 11:10:03 | 显示全部楼层
如果你自己知道函数实现什么功能,怎么实现。可以自定义一个头文件,把要实现的函数放在自定义文件里。
例如下面是我自己写的几个排序的函数。放在了sort.h头文件中。
  1. void InsertSort(int a[], int length)  //插入排序
  2. {
  3.         for (int i = 1; i < length; i++)
  4.         {
  5.                 int key = a[i];
  6.                 if (a[i] < a[i - 1])
  7.                 {
  8.                         int j = i - 1;
  9.                         while (a[j] > key &&j >= 0)
  10.                         {
  11.                                 a[j + 1] = a[j];
  12.                                 j--;
  13.                         }
  14.                         a[j + 1] = key;                //插入key值;
  15.                 }
  16.         }
  17. }

  18. void RevInsertSort(int a[], int length)     //插入排序降序输出
  19. {
  20.         for (int i = 1; i < length; i++)
  21.         {
  22.                 int key = a[i];
  23.                 if (a[i] > a[i - 1])
  24.                 {
  25.                         int j = i - 1;
  26.                         while (a[j] < key &&j >= 0)
  27.                         {
  28.                                 a[j + 1] = a[j];
  29.                                 j--;
  30.                         }
  31.                         a[j + 1] = key;                //插入key值;
  32.                 }
  33.         }
  34. }

  35. void SelectSort(int a[], int length)     //选择排序
  36. {

  37.         for (int i = 0; i < length; i++)
  38.         {
  39.                 int min = i;
  40.                 for (int j = i; j < length; j++)
  41.                 {
  42.                         if (a[j] < a[min])
  43.                         {
  44.                                 min = j;
  45.                         }
  46.                 }
  47.                 int temp = a[min];
  48.                 a[min] = a[i];
  49.                 a[i] = temp;
  50.         }
  51. }

  52. void RevSelectSort(int a[], int length)    //降序输出
  53. {

  54.         for (int i = 0; i < length; i++)
  55.         {
  56.                 int max = i;
  57.                 for (int j = i; j < length; j++)
  58.                 {
  59.                         if (a[j] > a[max])
  60.                         {
  61.                                 max = j;
  62.                         }
  63.                 }
  64.                 int temp = a[max];
  65.                 a[max] = a[i];
  66.                 a[i] = temp;
  67.         }
  68. }

  69. void Merge(int a[], int start, int end)   //归并函数的实现
  70. {
  71.         if (end - start == 1)
  72.         {
  73.                 if (a[start] > a[end])
  74.                 {
  75.                         int T = a[start];
  76.                         a[start] = a[end];
  77.                         a[end] = T;
  78.                 }
  79.         }
  80.         else if (end - start > 1)
  81.         {
  82.                 int middle = (start + end) / 2;
  83.                 int num_l = middle - start + 1;
  84.                 int num_r = end - middle;
  85.                 int *L = new int[num_l];
  86.                 for (int i = 0; i < num_l; i++)
  87.                 {
  88.                         L[i] = a[start + i];
  89.                 }
  90.                 int *R = new int[num_r];
  91.                 for (int i = 0; i < num_r; i++)
  92.                 {
  93.                         R[i] = a[middle + 1 + i];
  94.                 }
  95.                 L[num_l] = 999999;
  96.                 R[num_r] = 999999;

  97.                 int i = 0, j = 0, k = start;
  98.                 while (k < end + 1)
  99.                 {
  100.                         if (L[i] < R[j])
  101.                         {
  102.                                 a[k] = L[i];
  103.                                 k++;
  104.                                 i++;
  105.                         }
  106.                         else
  107.                         {
  108.                                 a[k] = R[j];
  109.                                 k++;
  110.                                 j++;
  111.                         }
  112.                 }
  113.         }
  114. }

  115. void MergeSort(int a[], int start, int end)   //归并排序
  116. {
  117.         if (start != end)
  118.         {
  119.                 int middle = (start + end) / 2;
  120.                 MergeSort(a, start, middle);
  121.                 MergeSort(a, middle + 1, end);
  122.                 Merge(a, start, end);
  123.         }
  124. }

复制代码

在主程序中就可以调用了:
#include<iostream>
#include"Sort.h"   //调用自定义的头文件;
using namespace std;

int main()
{
        int a[10] = { 3,1,4,2,6,5,10,7,9,8 };
        int length = 10;
        //InsertSort(a, length);
        //RevSelectSort(a, 10);
        MergeSort(a, 0, 9);
        for (int i = 0; i < 10; i++)
        {
                cout << a << endl;
        }

        system("pause");
        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-25 11:25:16 | 显示全部楼层
Mountain_gs 发表于 2018-12-25 11:10
如果你自己知道函数实现什么功能,怎么实现。可以自定义一个头文件,把要实现的函数放在自定义文件里。
例 ...

在codeblocks 里面怎么调用自己写的头文件呢??  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-25 11:36:21 | 显示全部楼层
没用过codeblocks
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2018-12-25 16:28:08 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-28 08:29:28 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
在IDE中写函数名(如果楼主确定函数名的话),然后右键点函数名,再点函数定义,就进入头文件了。看到头文件名就ok
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-28 09:01:29 | 显示全部楼层
小酒酒呢 发表于 2018-12-28 08:29
在IDE中写函数名(如果楼主确定函数名的话),然后右键点函数名,再点函数定义,就进入头文件了。看到头文件 ...

codeblocks 可以吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-28 09:13:33 From FishC Mobile | 显示全部楼层
1809228982 发表于 2018-12-28 09:01
codeblocks 可以吗?

我没用过这个,不过大部分的ide都是有这个功能的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-28 09:15:47 | 显示全部楼层
小酒酒呢 发表于 2018-12-28 09:13
我没用过这个,不过大部分的ide都是有这个功能的

好吧,谢谢了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-28 09:17:48 | 显示全部楼层
小酒酒呢 发表于 2018-12-28 09:13
我没用过这个,不过大部分的ide都是有这个功能的

  可以了,,我右键函数名就跳转到 对应的头文件了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-28 10:42:29 | 显示全部楼层
1809228982 发表于 2018-12-28 09:17
可以了,,我右键函数名就跳转到 对应的头文件了

okk  能解决楼主问题是我的荣幸呢。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-28 19:09:05 | 显示全部楼层
不清楚
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 03:26

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表