c语言函数传字符串参数 c++字符串作为参数传递

用c语言编写:编写一个函数,由实参传来一个字符串,统计此字符串中字母,数字,空格和其他字符的个数

#include stdio.h

创新互联是一家专注于做网站、网站建设与策划设计,望奎网站建设哪家好?创新互联做网站,专注于网站建设十年,网设计领域的专业建站公司;建站业务涵盖:望奎等地区。望奎做网站价格咨询:18980820575

#include string.h

int letter,number,blank,other;

void count(char str[])

{

int i;

for(i=0;str[i]!='\0';i++)

{

if((str[i]='a'str[i]='z')||(str[i]='A'str[i]='Z'))

letter++;

else if(str[i]='0'str[i]='9')

number++;

else if(str[i]==' ')

blank++;

else

other++;

}

}

int main()

{

char a[80];

gets(a);

puts(a);

strcat(a,"\0");

letter=0;

number=0;

blank=0;

other=0;

count(a);

printf("\n%5d,%5d,%5d,%5d\n",letter,number,blank,other);

return 0;

}

扩展资料:

C语言需要说明的是:

1、一个C语言源程序可以由一个或多个源文件组成。

2、每个源文件可由一个或多个函数组成。

3、一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。是整个程序的入口。

4、源程序中可以有预处理命令(包括include 命令,ifdef、ifndef命令、define命令),预处理命令通常应放在源文件或源程序的最前面。

5、每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。结构体、联合体、枚举型的声明的“}”后要加“ ;”。

6、标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。

参考资料:

百度百科-c语言

c语言如何传递字符串?

c语言函数中传递字符串,可以分为两种情况,一种是将字符串作为参数,一种是将字符串作为返回值

,当使用字符串作为返回值时,切记不要传递局部字符数组。下面是一个示例代码:

#include

#include

#include

void f(char *str) { //字符串作参数

printf(str);

}

char * r() { //字符串作返回值

//使用动态分配内存,不要使用局部变量比如

//char buf[80]; 因为局部变量在函数结束时,栈区变量已被回收

char *str = (char *)malloc(256 * sizeof(char));

if (str==0) { printf("can't alloc mem\n"); return 0;}

else memset(str, 0x00 ,sizeof(char) * 256);

return str; //

}

int main()

{

char *pstr = r();

if (pstr!=0) strcpy(pstr, "hello world\n");

f(pstr);

free(pstr);

return 0;

}

c语言字符串在函数间传递

#includestdio.h#includestring.hchar *start(char *wz);int main(){ char *sys = NULL; char xz,wz[99]="www"; scanf("%s",xz); if (xz=='1') sys=start(wz);/*将wz值传入start*/ printf("%s",sys);

if (sys != NULL) // 注意:分配内存以后一定要释放

free(sys); return 0;}char *start(char *wz){

char* str = (char*)malloc(99); // 堆中分配内存

strcpy(str, "am start -a android.intent.action.VIEW -d http://"); strcat(str,wz); return str; }

其实不建议以这种方式来写,start函数可以写成2元函数,一个函数传入参数,一个函数传出结果。

void start(char* pOut, char* pIn)

{

strcpy(pOut, "am start -a android.intent.action.VIEW -d http://");strcat(pOut, pIn);

}

C语言如何在两个函数之间传送字符串

用指针,例如:

#include stdio.h

#include stdlib.h

#include string.h

void abc(char *str){

strcpy(str,"string from abc\0");

};

void def(char *str){

printf("print in def: %s\n",str);

};

main()

{

char str[30];

abc(str[0]);

def(str[0]);

exit(0);

}

// abc()中给值,def()印出。

如何用c语言编一个函数 实现字符串作参数传递,给个编译过的程序

st 传入子程序, st2 从子程序送回.

---------------------------

#include stdio.h

void show_st( char *st, char *st2){

printf("%s\n", st);

strcpy(st2,"new string !!");

}

void main()

{

char st[32]="This is string !";

char new_st[32];

show_st( st[0], new_st[0]);

printf("new string is: %s\n", new_st);

exit(0);

}

C语言调用函数时,参数传的是字符串,并没有传字符串指针,为什么主函数中的值还是会变化?

在c语言中,字符串是以字符数组的方式存储的,而数组的本质就是指针;

因此,传进去一个字符串,就是把它的地址传去了。


文章名称:c语言函数传字符串参数 c++字符串作为参数传递
文章链接:http://pwwzsj.com/article/heppee.html