对于GCC 32位,-1 >> 1返回我FFFFFFFF,但我认为在2的补码之后,我将得到0111 1111 ... 1111,这应该是7fff ffff.我错过了什么?
我希望在一个单独的文件中定义全局变量,然后在任何我想要的地方注入,所以对于Laravel 4 + Blade,我做到了这一点.
顶级文件example.blade.php:
@include('head')
@include('body')
Run Code Online (Sandbox Code Playgroud)
head.blade.php
$STYLE_PATH_CSS="styleFolder/foundation/css"
$STYLE_PATH_JS="styleFolder/foundation/js"
$STYLE_PATH_JS_VENDOR="styleFolder/foundation/js/vendor"
<link rel="stylesheet" href=" <?php echo $STYLE_PATH_CSS ?>/normalize.css ">
<link rel="stylesheet" href=" <?php echo $STYLE_PATH_CSS ?>/foundation.css ">
<link rel="stylesheet" href=" <?php echo $STYLE_PATH_JS_VENDOR ?>/modernizr.js ">
Run Code Online (Sandbox Code Playgroud)
body.blade.php
<script src="styleFolder/foundation/js/vendor/jquery.js"></script>
<script src="styleFolder/foundation/js/foundation.min.js"></script>
Run Code Online (Sandbox Code Playgroud)
在那之前,它工作正常.然后我希望再简化一次:用全局变量替换重复路径.所以,
variables_G.blade.php
<?php $STYLE_PATH_CSS="styleFolder/foundation/css" ?>
<?php $STYLE_PATH_JS="styleFolder/foundation/js" ?>
<?php $STYLE_PATH_JS_VENDOR="styleFolder/foundation/js/vendor" ?>
Run Code Online (Sandbox Code Playgroud)
和新的head.blade.php
@include('variables_G.blade.php')
<link rel="stylesheet" href=" <?php echo $STYLE_PATH_CSS ?>/normalize.css ">
<link rel="stylesheet" href=" <?php echo $STYLE_PATH_CSS ?>/foundation.css ">
<link rel="stylesheet" href=" <?php echo $STYLE_PATH_JS_VENDOR ?>/modernizr.js ">
Run Code Online (Sandbox Code Playgroud)
那么它找不到变量的价值.错误信息:
Undefined variable: …Run Code Online (Sandbox Code Playgroud) int arr[10]={1,2,3,4,5,6,7,8,9,10};
printf("%p,%p\n", arr, &arr);
printf("%p,%p\n", arr+1, &arr+1);
return 0;
Run Code Online (Sandbox Code Playgroud)
对于此代码,GCC编译器返回
0xbfe41348,0xbfe41348
0xbfe4134c,0xbfe41370
Run Code Online (Sandbox Code Playgroud)
第一行很清楚,没问题.但第二行让我感到困惑.第一个地址移动到下一个int,所以它是4个字节后arr,清除.但是,因为&arr+1我认为它将指向整个数组的末尾arr[10],所以它应该向地址添加4*10.我误解了什么吗?
我对Laravel 4 Form Macro的创作感到困惑.要创建自定义表单宏,我做了三件事:1)app/macros.php
<?php
Form::macro('f', function()
{
return '<p>Full name: <input type="text" name="full_name"></p>';
});
Run Code Online (Sandbox Code Playgroud)
2)app/routes.php
Route::get('/f', function(){
return Form::f();
)};
Run Code Online (Sandbox Code Playgroud)
3)start/global.php
app_path().'/macros.php'
Run Code Online (Sandbox Code Playgroud)
但当我去/ hostlocal/f时,Laravel返回"方法f不存在".谁能找到问题?
我认为在程序结束时,il将打印3但实际上它是0.
任何人都可以解释它是如何发生的吗?
这是代码:
int arr[3] = {2, 3, 4};
char *p;
p = arr;
p = (char*)((int*)(p)); // two conversion, means nothing, omit
printf("%d, ", *p); // point to 2,
p = (int*)(p+1); // point to 3 ?
printf("%d", *p);
return 0;
Run Code Online (Sandbox Code Playgroud) 以下代码将打印arr[1]〜arr[5].
int arr[5], i=0;
while(i<5){
arr[i]=++i;
printf("%d, ", arr[i]);
}
Run Code Online (Sandbox Code Playgroud)
我的问题是一个固定长度的数组:我们可以在没有任何限制的情况下添加一个新元素吗?