标签: format

格式字符串漏洞 - printf

为什么打印内存地址的值为0x08480110?我不确定为什么有5%的08x参数 - 这会把你带到哪里?

address = 0x08480110
address (encoded as 32 bit le string): "\x10\x01\x48\x08"
printf ("\x10\x01\x48\x08_%08x.%08x.%08x.%08x.%08x|%s|");
Run Code Online (Sandbox Code Playgroud)

这个例子来自本文的第11页http://crypto.stanford.edu/cs155/papers/formatstring-1.2.pdf

c security string format

12
推荐指数
2
解决办法
1万
查看次数

如何规避GCC中的格式截断警告?

我收到以下gcc格式 - 截断警告:

test.c:8:33: warning: ‘/input’ directive output may be truncated writing 6 bytes into a region of size between 1 and 20 [-Wformat-truncation=]
snprintf(dst, sizeof(dst), "%s-more", src);
                             ^~~~~~
test.c:8:3: note: ‘snprintf’ output between 7 and 26 bytes into a destination of size 20
snprintf(dst, sizeof(dst), "%s-more", src);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Run Code Online (Sandbox Code Playgroud)

像这样的代码:

char dst[20];
char src[20];
scanf("%s", src);
snprintf(dst, sizeof(dst), "%s-more", src);
printf("%s\n", dst);
Run Code Online (Sandbox Code Playgroud)

我知道它可能会被截断 - 但这正是我首先使用snprintf的原因.有没有办法让编译器明白这是预期的(不使用编译指示或-Wno格式截断)?

c format gcc gcc-warning

12
推荐指数
3
解决办法
8776
查看次数

如何通过示例格式化C#中的日期?

在为字符串表示格式化DateTime对象时,C#提供了很大的灵活性,但是,必须知道所有格式字符串才能使用这种灵活性.

如果您想以"星期五,6月24日"的形式显示日期,您可以这样做:

DateTime someDate = DateTime.Now;
Console.Write(someDate.ToString("ddd, MMMM dd"));
Run Code Online (Sandbox Code Playgroud)

虽然这很好用,但是对于更复杂的格式来说很难,特别是对于第一次使用它的开发人员而言.

我想从上面的代码返回相同的结果,但是这样:

DateTime someDate = DateTime.Now;
Console.WriteLine(someDate.ToString("Wed, June 12"));
Run Code Online (Sandbox Code Playgroud)

指定为字符串的日期可以是任意的.本质上,格式必须首先以某种方式解析日期.我知道这种方法有局限性(本地化是一种),但对于简单的场景,它更容易理解.除了自己实现之外,还有什么办法吗?我愿意使用第三方库.

.net c# format datetime

11
推荐指数
3
解决办法
3329
查看次数

PHP - 将日期插入mysql

我试图将日期插入到mysql中,但每次失败并0000-00-00在phpmyadmin中出现

我的日期格式类似于2012-08-06(yyyy-mm-dd),数据库中的日期字段类型是date.

$date = "2012-08-06";
mysql_query("INSERT INTO data_table (title, date_of_event) 
             VALUES('". $_POST['post_title'] ."',
                    '". $date ."')") or die(mysql_error()); 
Run Code Online (Sandbox Code Playgroud)

试图改变-/或删除它们,这是行不通的.

php mysql format date insert

11
推荐指数
2
解决办法
9万
查看次数

为什么我会在格式化后的NUMBER列中获得#### ... Oracle?

我有两个有问题的列:FeeNUMBER类型,AdjFee也是NUMBER.后

column Fee format a5;
select Fee ID smth
from Visit;
Run Code Online (Sandbox Code Playgroud)

我明白了

Fee    ID   smth
####  123  klkl
####  654  rfjgr
Run Code Online (Sandbox Code Playgroud)

oracle format numbers sqlplus

11
推荐指数
1
解决办法
4万
查看次数

Notepad ++和regex:如何UPPERCASE字符串/ find/replace的特定部分

我已经尝试了一段时间才能使这个工作,但我自己找不到这个任务的解决方案 - 好吧,我对正则表达式使用很新,但很有兴趣学习,希望任何人有一些脑力待遇我...

我的文字字符串是这样的 - 没有数字......

Word1 Word2 word3(括号中的一些单词)
Word1(括号中的一些单词)
word1,Word2(括号中的某些单词)

表示:无限数量的单词(有时只有一个,可能是2到4,有时用逗号分隔)后跟一个圆括号中的字符串(括号中的值不应更改)

我正在寻找的是两个不同的正则表达式 - 在记事本++中使用FIND和REPLACE
1.仅在括号
2 之前的所有单词的大写字母2.如no.1 +添加html-tags)

应该是这样的:1:

WORD1 WORD2 WORD3(括号中的一些单词)
WORD1(括号中的一些单词)
WORD1,WORD2(括号中的一些单词)

和2:

编辑:第二个html标签位于错误的位置,现在正确!

%htmltag%WORD1 WORD2 WORD3%/ htmltag%(括号中的某些单词)
%htmltag%WORD1%/ htmltag%(括号中的某些单词)
%htmltag%WORD1,WORD2%/ htmltag%(括号中的某些单词)

希望有人可以帮助我 - 非常有用!

regex format text notepad++ uppercase

11
推荐指数
2
解决办法
1万
查看次数

google-bigquery格式日期为查询结果中的mm/dd/yyyy

我正在使用Bigquery SQL生成报告.标准Bigquery日期格式是yyyy-mm-dd,但我希望它格式化为mm/dd/yyyy.

有没有办法通过Bigquery SQL转换SELECT上的日期格式?

提前致谢,

sql format date google-bigquery

11
推荐指数
1
解决办法
2万
查看次数

iOS版; 不支持的像素格式

我的Unity应用程序将相机Feed用于应用程序使用的多个系统; 例如Vuforia,ARKit和一般相机输入输入.

我遇到的问题是每个请求都有不同的像素格式,这似乎会导致ARKit出现问题.这需要YUV,我不知道如何原生地将相机像素格式切换回来.所以当我尝试在其他人之后启动ARKit时,我得到了这个错误;

2017-08-21 08:51:38.749452 + 0100 ar_app [399:105849] [传感器]不支持的像素格式:875704438

2017-08-21 08:51:38.749876 + 0100 ar_app [399:105849] [会话]会话失败并显示错误:错误Domain = com.apple.arkit.error Code = 104"不支持的捕获会话配置."

UserInfo = {NSLocalizedRecoverySuggestion =确保正在使用正确的设备和格式进行捕获.

NSLocalizedDescription =不支持的捕获会话配置.,

NSLocalizedFailureReason =给定配置不支持所提供捕获会话的输入设备和/或格式.}

至少,这就是我认为的问题; 它没有获得YUV中的格式.任何帮助将非常感激..谢谢.

format camera unity-game-engine ios arkit

11
推荐指数
1
解决办法
897
查看次数

Prettier 不断用下划线替换星号字符

我正在尝试在 Visual Studio Code 中编写一些 Markdown 文本,每当我编写以下内容时:

*some text*
Run Code Online (Sandbox Code Playgroud)

我保存文件后它就会被替换为:

_some text_
Run Code Online (Sandbox Code Playgroud)

我将其范围缩小为由 Prettier 扩展引起的。我尝试寻找一个可以控制此问题的设置,但没有找到任何设置 - 没有一个明显与该问题相关。

我真的很想为 Markdown 文件启用 Prettier,因为它还可以使表格保持整洁。

有办法解决这个问题吗?

更新:

我知道当文件通过 Markdown 查看器显示时,星号和下划线都适用于斜体强调,但是当以纯文本形式读取文件时,星号对我来说强调强调更自然,如果可能的。

format markdown visual-studio-code prettier

11
推荐指数
1
解决办法
3047
查看次数

Intl.NumberFormat() 中是否有一个选项可以自动转换为更大的单位?

我想Intl.NumberFormat()根据通用规则自动在单位之间从较小的单位转换为较大的单位。即给定的数字应该根据数字的大小在输出中转换为厘米、米和公里之间的值。

代码示例:

const bytes = 1000000;
const transferSpeed = new Intl.NumberFormat('en-US',
  {style: 'unit', unit: 'byte-per-second', unitDisplay: 'narrow'}).format(bytes);
console.log(transferSpeed);

const days = 365;
const timespan = new Intl.NumberFormat('en-US',
  {style: 'unit', unit: 'day', unitDisplay: 'long'}).format(days);
console.log(timespan);
Run Code Online (Sandbox Code Playgroud)

这两个调用的输出是:

1,000,000B/秒
365 天

在这种情况下,我希望这样:

1MB/秒
1 年

人们可能想要定义何时转换为下一个更大单位的阈值。因此,一旦达到确切的值,转换就应该发生,但也应该更早,比如下一个更大单位的 90%。鉴于上面的示例,输出将是这样的:

0.9MB/秒
0.9 年

API 是否有配置选项可以做到这一点?

javascript format internationalization

11
推荐指数
1
解决办法
5202
查看次数