我有一个程序也接受非英语字符作为输入字段。因为我们使用strlen,所以当存在非英文字符时,在计算字符串长度时,它无法给出预期的长度。对于输入nova,输出是4,而对于输入\xc3\xb1ova,输出是5,而输出应该是4。
strlen("nova")=4strlen("\xc3\xb1ova")=5在第二种情况下,我期望输出为4相反。
我可以用某个函数来预测sprintf()需要的空间吗?IOW,我可以调用一个函数size_t predict_space("%s \n",some_string)来返回由sprintf("%s \n",some_string)产生的C字符串的长度吗?
我想声明一个C#值类型,它只允许特定长度的字符串.所述长度应在编译时验证.这在Delphi中是可行的:
type
TString10 = string[10];
Run Code Online (Sandbox Code Playgroud)
如果我使用所说的tyoe:
var
sTen : TString10;
sTen := '0123456789A'; //This generates a compile time error
Run Code Online (Sandbox Code Playgroud)
现在据我所知,你不能在C#中声明一个固定长度的字符串类型.我见过的各种解决方案都不提供C#的编译时检查.因为我准备声明我自己的C#值类型结构这是我可以实现的东西.Format()吗?
所有帮助和指示非常感谢.
PS.我真的想实现字符串长度分配的编译时间检查,所以请不要"你为什么......?"
我正在使用的列的一次包含导入文件的目录路径.但是,我不想要整个目录路径.我只想要文件名.
我在做什么:
我正在尝试使用Charindex函数来定位以下内容:'\'.我还试图结合Max,substring,right,left等功能来获得我想要的东西,但没有运气.
有人可以指导我走正确的道路吗?
SELECT
substring(batch_ID, max(charindex('\', batch_ID )), len(batch_ID) - max(charindex('\'))),
Run Code Online (Sandbox Code Playgroud) Python的新手,我只是想知道如何限制用户输入以确保它们输入64位
目前我已经有了这段代码
while True:
num = input('Please enter 64-bits')
if len(num=4)
print ('Accepted')
break
else:
print ('Not Accepted, try again')
Run Code Online (Sandbox Code Playgroud)
我知道第3行是错的,但我很确定我必须以某种方式使用len,非常感谢任何帮助,谢谢!
只是想知道字符串表示中IPv4/IPv6地址的最小字符数.什么是最短的有效IP地址?
这可能是一个非常简单的问题,但我会先给你代码.
import java.util.Scanner;
public class help {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
System.out.print("Give: ");
String s = sc.next();
String[] parts = s.split(".");
System.out.println(parts.length);
}
}
Run Code Online (Sandbox Code Playgroud)
即使我给出了192.168.1.1.1.1.1或1.2.3或者...... parts.length也总是0,有人可以向我解释为什么以及如果我输入1.2.3.4我怎么能让它成为4?
我在一个javascript开源项目中遇到了这段代码.
validator.isLength = function (str, min, max)
// match surrogate pairs in string or declare an empty array if none found in string
var surrogatePairs = str.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g) || [];
// subtract the surrogate pairs string length from main string length
var len = str.length - surrogatePairs.length;
// now compare string length with min and max ... also make sure max is defined(in other words, max param is optional for function)
return len >= min && (typeof max === 'undefined' || …Run Code Online (Sandbox Code Playgroud) 此代码返回n = 11,第10和第11个字符为''和'@'这是如何工作的?strlen函数如何将其视为11个字符?在某些编译器中,似乎需要字符串长度为12个字符.
#include <stdio.h>
#include <string.h>
void fun(char *arr)
{
int i;
unsigned int n = strlen(arr);
printf("n = %d\n", n);
for (i=0; i<n; i++)
printf("%c ", arr[i]);
}
int main()
{
char arr[] = {'g', 'e', 'e', 'k', 's', 'q', 'u', 'i', 'z'};
fun(arr);
return 0;
}
Run Code Online (Sandbox Code Playgroud) Python的新手。我试图在一系列嵌套列表中找到一个值的最长长度。这是一个示例列表类型:
tableData = [['apples', 'oranges', 'cherries', 'banana'],
['Alice', 'Bob', 'Carol', 'David'],
['dogs', 'cats', 'moose', 'goose']]
Run Code Online (Sandbox Code Playgroud)
我想要的答案是8,但是如果更新列表,则可能会更改。
当我使用print(len(tableData))3时,嵌套列表的数量。我也无法解决这个问题。
抱歉,这是一个非常简单的问题,但我很茫然。
在此先感谢您的帮助。
string-length ×10
c ×3
encoding ×2
python ×2
string ×2
strlen ×2
arrays ×1
c# ×1
c-strings ×1
compile-time ×1
if-statement ×1
ip-address ×1
java ×1
javascript ×1
loops ×1
max ×1
non-english ×1
printf ×1
python-3.x ×1
split ×1
sql ×1
substring ×1
utf ×1
while-loop ×1