三九宝宝网宝宝教育教学论文

怎样用C语言编程实现读取一个C程序统计里面的函数个数

01月02日 编辑 39baobao.com

[谁可以给我讲一下C语言里的外用函数]外部函数在整个源程序中都有效,其定义的一般形式为: extern 类型说明符 函数名(形参表) 例如: extern int f(int a,int b)如在函数定义中没有说明extern或static则隐含为extern。...+阅读

个人意见:

首先你的思路是有缺陷的,

如一楼所说。

其次,这个问题的实现,可以借鉴多项式处理的思路。

从行首开始读取,

特例:判断行首是否为"main",如果是,则算一个函数。

一般情况:

读取行首到" "间的第一个字符串,看是否为有效返回类型(void,int,float...)

如果是有效返回类型,继续读取后续,否则本次处理完毕,读取下一行。

继续读取" "到"("间的字符串(这期间如果直到行尾都没有读到{,则本次处理完毕,读取下一行),

将"("压栈,继续读取,如果在其后读取到非有效字符(如"{","("等),则本次处理完毕,读取下一行,如果读取到")",则继续读取,

如果在本行,或者下一行读取到"{",则计数加一。

(判断本行,或者下一行读取到"{"的目的是为了防止读到函数声明,也被计数了)

时间较紧,想的还有很多缺陷,

不过说实话,这个明天就要交,估计时间不够。

以下为关联文档:

为什么C语言中所有的函数都是外函数来自百科 C语言外部函数是一种可在自身所处的源文件及其他源文件中都能被调用的函数。外部函数的作用域是整个源程序。 函数调用 编辑 1、在定义函数时,若在函数首部的最左端...

有关C语言的内部函数和外部函数的定义说明有两种理解. (1)库函数是C语言的内部函数或自带函数,外部函数即程序员自定函数. (2)凡加写了extern 的函数是外部函数.第一种理解好懂:C语言的内部函数指的是C语言自带的函数,无论...

在C语言编程中数据结构与算法是怎么体现的或者说怎么理解数据结举个例子,你写个程序,要存全校学生的信息。 首先学生数量可能是变动的,你不可能写成固定数组。 你可以思考下怎么存。 这时候就可以建立一个链表,在每次输入一个新生时把他挂入...

C语言编程题:初始化一个已排序的整型数组用二分法查找其中是#include <stdio.h> #include <string.h> void Sort(int a[],int n) { int i,j,k; int num; for(i = 0; i < n - 1; ++i) { k = i; for(j = i + 1; j < n; ++j) if(a[k] > a...

初中数学总复习:二次函数解: (1)假设甲、乙两种商品的进货单价各为x,y元, 根据题意得:{x+y=53(x+1)+2(2y-1)=19, 解得:{x=2y=3; 答:甲、乙两种商品的进货单价各为2元、3元; (2)∵商店平均每天卖出甲商品500件和...

c语言中怎样把字符串作为函数变量你在函数头定义就行,例如: /* void print(char a[],int n) { int i ; for( int i =0; i< n;i++) printf("%c ",a[i]); printf("\n"); } int main() { char a[] = "abacad"; print(a)...

C语言字符串能做函数参数么怎么用必须用指针啥的么对于二维数组何种形式代表地址你还不够了解。 帮你修改的程序如下: #define N 3 void Printnamevalue(int value[],char name[N][50]) { int i; for(i=0;i<N;i++) printf("%s%...

C语言运算符和scanf函数(1) strcmp函数的原型是: int strcmp(char *p1,char *p2) {int i=0; while (*(p1+i)==*(p2+i)) if (*(p1+i++)=='\0') return 0;/* 这里是先判断*(p1+i)=='\0',然后再是i++ */ re...

C语言中字符插入字符串函数#include#include//方便在控制台打印中英文混合字符 int main() { char s[]="1234.5678"; int i=0; char*p=s; for(i=11;i>=4;i--)//第二个数字2后的字符整体后移2位以便最后...

推荐阅读
图文推荐