用vs2008编译c语言出现错误
#include#includeintmain(void){charstr1[80]="asd123fg25kji";charfun(chars[80]);fun(str...
#include#includeint main(void)
{
char str1[80]="asd123fg25kji";
char fun(char s[80]);
fun(str1);
printf("%s\n",str1);
}
char fun(char s[80])
{
int i;
char str2[80],str3[80];
char str4[80];
for(i=0;i<20;i++)>'A'&&s[i]<'z')||(s[i]>'a'&&s[i]<'z'))
{
str2[i]=s[i];
}
else
str3[i]=s[i];
}
str4[80]=stract(str2,str3);
return str4;
}
#include#includeint main(void)
{
char str1[80]="asd123fg25kji";
char fun(char s[80]);
fun(str1);
printf("%s\n",str1);
}
char fun(char s[80])
{
int i;
char str2[80],str3[80];
char str4[80];
for(i=0;i<20;i++)>'A'&&s[i]<'z')||(s[i]>'a'&&s[i]<'z')) 1="" else="" return="">------ 已启动生成: 项目: text8, 配置: Debug Win32 ------
1>正在编译...
1>text.c
1>e:\c语言\c程序\text8\text8\text.c(24) : warning C4013: “stract”未定义;假设外部返回 int
1>e:\c语言\c程序\text8\text8\text.c(25) : warning C4047: “return”: “char”与“char [80]”的间接级别不同
1>e:\c语言\c程序\text8\text8\text.c(25) : warning C4172: 返回局部变量或临时变量的地址
1>正在编译资源清单...
1>Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
1>Copyright (C) Microsoft Corporation. All rights reserved.
1>正在链接...
1>text.obj : error LNK2019: 无法解析的外部符号 _stract,该符号在函数 _fun 中被引用
1>E:\C语言\C程序\text8\Debug\text8.exe : fatal error LNK1120: 1 个无法解析的外部命令
1>生成日志保存在“file://e:\C语言\C程序\text8\text8\Debug\BuildLog.htm”
1>text8 - 2 个错误,3 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ========== 展开
{
char str1[80]="asd123fg25kji";
char fun(char s[80]);
fun(str1);
printf("%s\n",str1);
}
char fun(char s[80])
{
int i;
char str2[80],str3[80];
char str4[80];
for(i=0;i<20;i++)>'A'&&s[i]<'z')||(s[i]>'a'&&s[i]<'z'))
{
str2[i]=s[i];
}
else
str3[i]=s[i];
}
str4[80]=stract(str2,str3);
return str4;
}
#include#includeint main(void)
{
char str1[80]="asd123fg25kji";
char fun(char s[80]);
fun(str1);
printf("%s\n",str1);
}
char fun(char s[80])
{
int i;
char str2[80],str3[80];
char str4[80];
for(i=0;i<20;i++)>'A'&&s[i]<'z')||(s[i]>'a'&&s[i]<'z')) 1="" else="" return="">------ 已启动生成: 项目: text8, 配置: Debug Win32 ------
1>正在编译...
1>text.c
1>e:\c语言\c程序\text8\text8\text.c(24) : warning C4013: “stract”未定义;假设外部返回 int
1>e:\c语言\c程序\text8\text8\text.c(25) : warning C4047: “return”: “char”与“char [80]”的间接级别不同
1>e:\c语言\c程序\text8\text8\text.c(25) : warning C4172: 返回局部变量或临时变量的地址
1>正在编译资源清单...
1>Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
1>Copyright (C) Microsoft Corporation. All rights reserved.
1>正在链接...
1>text.obj : error LNK2019: 无法解析的外部符号 _stract,该符号在函数 _fun 中被引用
1>E:\C语言\C程序\text8\Debug\text8.exe : fatal error LNK1120: 1 个无法解析的外部命令
1>生成日志保存在“file://e:\C语言\C程序\text8\text8\Debug\BuildLog.htm”
1>text8 - 2 个错误,3 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ========== 展开
2个回答
展开全部
#include <stdio.h>
#include <string.h>
void fun(char * s);
int main(void)
{
char str1[80] = "asd123fg25kji";
fun(str1);
printf("%s\n", str1);
return 0;
}
void fun(char * s)
{
char s1[80] = {0};
char s2[80] = {0};
int j = 0;
int k = 0;
for (int i = 0; i < strlen(s); i++)
{
// 如果是字母,则保存到s1中
if ((s[i] >= 'A' && s[i] <= 'Z')
|| (s[i] >= 'a' && s[i] <= 'z'))
{
s1[j++] = s[i];
}
// 不是字母,保存到s2中
else
{
s2[k++] = s[i];
}
}
// 将s清空
s[0] = 0;
// 拼接s1
strcat(s, s1);
// 拼接s2
strcat(s, s2);
}
运行结果如下:
欢迎采纳!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询