c - 如何使用现有名称数组创建电子邮件地址?
问题描述
我在下面有一个基本代码示例(名称为 CSV 格式,名字和姓氏用逗号分隔),我将使用它来制作电子邮件地址。
因此,目标是: 1. 使用名字和名字中的 3 个字符,创建一个添加 +gmail.com 的电子邮件地址(例如 markas@gmail.com)。2. 只使用小写字符。
#include <stdio.h>
#define MAX_STR 50
void PrintPerson(char person[]);
int main(void)
{
char data[][MAX_STR] = {"Maria,Kask",
"Johanna-Maria,Kask",
"Kalev Kristjan,Kask"};
int i;
int numOfPeople = sizeof(data) / MAX_STR;
printf("Number of people: %d\n", numOfPeople);
for (i = 0; i < numOfPeople; i++)
{
PrintPerson(data[i]);
}
return 0;
}
void PrintPerson(char person[])
{
printf("Parsing: '%s'\n", person);
}
解决方案
听起来不太难。我认为这是家庭作业,所以我只给你一个大纲:
制作一个接收名称和输出缓冲区的函数,例如
int toEmail(char *name, char *email);
该函数返回是否能够从名称创建电子邮件地址。
email
该函数使用该函数获取名称的前三个字符并将它们复制到tolower
。
然后它会跳过直到找到一个逗号,然后将接下来的三个字符复制到email
使用该tolower
函数。如果它没有找到逗号,它会返回0
以指示错误。
然后它附加"@gmail.com"
字符串并返回1
以指示成功。
现在main
有一个像你data
的地址一样的数组,并将循环中的email
每个元素data
和 of传递给函数。email
现在你完成了。
推荐阅读
- logging - Chilkat:代理身份验证被记录
- c# - NewtonSoft Json 解析器错误:JSON 字符串中的项目符号字符
- command-line-interface - IBM Cloud:如何从 CLI 对存储桶启用公共访问?
- jira - 在 Robot Framework 侦听器中使全局变量可访问
- c++ - C ++中的动态对象与非动态对象
- php - 更新 WooCommerce 产品价格和库存
- c# - Modbus rtu 无法读取所有数据
- python - Spark DataFrame:根据其他列添加新列
- amazon-web-services - 使用aws放大通知(React Native)在Android中推送通知时出错
- c++ - 在 Vscode 上很难将 c++17 更改为 c++11