Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 生成唯一字符串的有效方法_C_String_Unique - Fatal编程技术网

C 生成唯一字符串的有效方法

C 生成唯一字符串的有效方法,c,string,unique,C,String,Unique,我有一套条目;每个条目都包含一个唯一的名称(C字符串)。创建新条目时,用户可以提供条目的唯一名称,也可以不提供。如果用户没有提供名称,我必须生成一个默认的唯一名称。我想计算条目的数量,增加它,并将其用作新条目的唯一名称的索引,但这个名称可能已经存在。在我的例子中,还有哪些其他方法可以生成真正唯一的名称?将您已有的所有名称存储在哈希表中。使用您描述的算法生成新名称,然后通过哈希查找检查唯一性。如果名称已在使用中,请增加数字,然后重试;继续,直到找到尚未使用的名称 注意:问题的存在只是因为您允许用户

我有一套条目;每个条目都包含一个唯一的名称(C字符串)。创建新条目时,用户可以提供条目的唯一名称,也可以不提供。如果用户没有提供名称,我必须生成一个默认的唯一名称。我想计算条目的数量,增加它,并将其用作新条目的唯一名称的索引,但这个名称可能已经存在。在我的例子中,还有哪些其他方法可以生成真正唯一的名称?

将您已有的所有名称存储在哈希表中。使用您描述的算法生成新名称,然后通过哈希查找检查唯一性。如果名称已在使用中,请增加数字,然后重试;继续,直到找到尚未使用的名称


注意:问题的存在只是因为您允许用户输入唯一的名称。如果以编程方式生成所有唯一字符串,则无需重复检查:保持条目总数的运行就足够了。

生成?不,只生成以太网接口抽象的名称。好的,谢谢,我想我会尝试这种方法。